C++Listview工具提示

C++ Listview tooltip

本文关键字:工具提示 C++Listview      更新时间:2023-10-16

我在报表视图中有一个列表视图,我正试图为它显示工具提示,每个项目都不同。

但我根本无法显示任何工具提示。。。

到目前为止,我发现了以下几点:

case LVN_GETINFOTIP:
{
    LPNMLVGETINFOTIP GetInfoTip = (LPNMLVGETINFOTIP) lParam;
    GetInfoTip->pszText = L"TESTING";
    // What do I do now? How do I display the tooltip?
    return 0;
}

收到LVN_GETINFOTIP消息后,如何显示工具提示?

问题是您正在替换指针pszText。您需要修改内存缓冲区的内容。例如,使用StringCchPrintf

是否忘记设置LVS_EX_INFOTIP

ListView_SetExtendedListViewStyle(hListView, LVS_EX_INFOTIP  | LVS_EX_LABELTIP);

请在此处查看的示例

LPNMLVGETINFOTIP pGetInfoTip = reinterpret_cast<LPNMLVGETINFOTIP>(pNMHDR);

至少在报表模式下,只有当鼠标位于的第0列时,才会收到消息