C/C++ 通用控件检测双击 TVItem
C/C++ Common Controls detecting double-click of TVItem
有什么方法可以检测是否使用公共控件和 WINAPI 双击树视图控件(特别是 TVITEM)?
我的意思是在我的表单的 wndproc 函数中。
如果是这样,那么在那种情况下 msg、wParam 和 lParam 是什么?
双击树视图控件时会发送 NM_DBLCLK
通知,其中 uMsg
= WM_NOTIFY
并且 lParam
指向 NMHDR
结构根据文档。
然后您可以向树视图控件发送 TVM_HITTEST
消息以确定光标下的项目,例如:
TVHITTESTINFO tvhti = {};
GetCursorPos (&tvhti.pt);
ScreenToClient (hTreeView, &tvhti.pt);
SendMessage (hTreeView, TVM_HITTEST, 0, (LPARAM) &tvhti);
有关 TVM_HITTEST
返回的值,请参阅 documentation。
有什么方法可以检测是否使用公共控件和 WINAPI 双击树视图控件(特别是 TVITEM)? 我的意思是在我的表单的 wndproc 函数中。
如果是这样,那么在那种情况下 msg、wParam 和 lParam 是什么?
双击树视图控件时会发送 NM_DBLCLK
通知,其中 uMsg
= WM_NOTIFY
并且 lParam
指向 NMHDR
结构根据文档。
然后您可以向树视图控件发送 TVM_HITTEST
消息以确定光标下的项目,例如:
TVHITTESTINFO tvhti = {};
GetCursorPos (&tvhti.pt);
ScreenToClient (hTreeView, &tvhti.pt);
SendMessage (hTreeView, TVM_HITTEST, 0, (LPARAM) &tvhti);
有关 TVM_HITTEST
返回的值,请参阅 documentation。