0

在我的对话框 WM_INITDIALOG 处理程序中,我将LVS_EX_INFOTIP | LVS_EX_LABELTIP样式设置为窗口,如下所示:

ListView_SetExtendedListViewStyle(GetDlgItem(IDC_MAIN_LIST), LVS_EX_INFOTIP  | LVS_EX_LABELTIP);

对话框的消息映射定义包含以下内容:

BEGIN_MSG_MAP(MyDlg)
    NOTIFY_HANDLER(IDC_MAIN_LIST, LVN_GETINFOTIP, OnMainListViewGetInfoTip)
    ....
    REFLECT_NOTIFICATIONS()
END_MSG_MAP()

哪里OnMainListViewGetInfoTip是:

LRESULT OnMainListViewGetInfoTip(int idCtrl, LPNMHDR pnmh, BOOL& bHandled)
{
    CString tempStr = L"tooltip message";
   LPNMLVGETINFOTIP pGetInfoTip = (LPNMLVGETINFOTIP)pnmh;
   if (pGetInfoTip != NULL)
   {
       pGetInfoTip->pszText = tempStr.GetBuffer();
   }
    return S_OK;
}

我根本没有收到 LVN_GETINFOTIP 通知。另外,我不知道从 pnmh 到 pGetInfoTip 的转换是否正确,并且 MSG_LVN_GETINFOTIP 没有被 VS 识别。

4

0 回答 0