Autor Beitrag
_frank_
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 343
Erhaltene Danke: 1

Win XP
Delphi 3 Prof / Turbo Delphi Explorer
BeitragVerfasst: So 07.06.09 19:12 
Hi,
ich bastel gerade bisschen mit c++ rum, klappt bisher auch ganz gut.
momentan bin ich dabei ein treeview zu erstellen.

lt. MSDN und einigen Beispielquelltexten hab ich herausgefunden, dass bei einem Klick auf eine treenode eine WM_Notify-Nachricht mit einem pointer auf ein NMHDR-struct verschickt wird.

WM_Notify wird verschickt, jedoch ist scheinbar im Auswerten des angehängten struct der Wurm drin :)

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
LRESULT MyTreeview::MyWndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam)
{
  switch(message)
  {
    //case WM_LBUTTONDBLCLK:{DoDblClick();};break;
    case WM_NOTIFY:
    {
      switch(((LPNMHDR)lparam)->code)
      {
        case NM_CLICK:
        {MessageBox(hwnd,"NM_Click","Test",0);};break;
        case NM_DBLCLK:
        {DoDblClick();};break;
        // case NM_RCLICK:
        // {};break;
      }
    };break;
  }
  return CallWindowProc( wndProcOrig, hwnd, message, wparam,lparam); 
}


weder NM_CLICK noch NM_DBLCLK werden aufgerufen.

ich hab versucht mir mit folgendem Code den Wert von "code" anzeigen zu lassen (nach case WM_NOTIFY:{), aber leider zeigt mir debugview nichts an:
ausblenden C#-Quelltext
1:
2:
3:
      char c[10];
      sprintf(c,"%d",((LPNMHDR)lparam)->code);
      OutputDebugString(c);

Gruß Frank

Moderiert von user profile iconNarses: Code- durch C#-Tags ersetzt
Einloggen, um Attachments anzusehen!
_________________
EB FE (die wahrscheinlich kürzeste Endlosschleife der Welt :) )
BA 01 00 00 00 52 EB 09 BB 4D 11 86 7C FF D3 EB 0D E8 F2 FF FF FF 63 68 61 72 6D 61 70 00 C3