处理TreeView鼠标双击

时间:2013-09-02 14:37:49

标签: c++ winapi treeview

如何在WinProc中双击或右键单击TreeView? 我试过这个:

if(LOWORD(wParam) == GetWindowID(g_hWndTV &&
    HIWORD(wParam) == WM_RBUTTONUP)
......

但这不起作用。 谢谢你的回答

1 个答案:

答案 0 :(得分:1)

这两个事件都将通过发送到树控件父窗口的WM_NOTIFY消息来实现。您可以获得NM_RCLICK右键单击,NM_DBLCLK进行双击。

case WM_NOTIFY:
    if (reinterpret_cast<LPNMHDR>(lParam)->hwndFrom == g_hWndTV)
    {
         if (reinterpret_cast<LPNMHDR>(lParam)->code == NM_RCLICK)
         {
              // right-click
         }
         else
         if (reinterpret_cast<LPNMHDR>(lParam)->code == NM_DBLCLK)
         {
              // double-click
         }
    }
    break;