我想将双击发送到列表 View 。从我在msdn上阅读的内容来看,我似乎必须发送WM_NOTIFY消息以及带有NM_DBLCLK的消息。但是我对实现它的方法并不了解。我之前使用过SendMessage,但MSDN尚不清楚如何填充结构,因此:

WM_NOTIFY http://msdn.microsoft.com/en-us/library/bb775583(VS.85).aspx
NM_DBLCLK http://msdn.microsoft.com/en-us/library/bb774867(VS.85).aspx

最佳答案

我怀疑您走错了路。发送双击消息的最佳方法可能是发送两次单击,一次单击之后。这是最好的工作机会,并且毫不意外地通过双击通知使应用程序感到惊讶。

如果要将通知发送到父窗口,则可以开始使用:

NMITEMACTIVATE activate={0};
activate.hdr.hwndFrom = hWnd; // of the list view control
activate.hdr.idFrom = id; // of the list view control
activate.hdr.code = NM_DBLCLK;

activate.iItem = iItem; // the id of the list item to click
activate.iSubItem = iSubItem;
activate.ptAction = ptAction; // where the event occurred

::SendMessage(hWndParent, WM_NOTIFY, id, reinterpret_cast<LPNMITEMACTIVATE>(&activate));

关于c++ - 将双击发送到 ListView (C++,而不是.net!),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/974722/

10-09 07:04