MFC / WIN32:鼠标悬停突出显示在listctrl中

时间:2010-03-19 22:11:29

标签: c++ visual-studio mfc winapi

Windows资源管理器的ListView控件为鼠标下的任何项目提供了一个突出显示,而不会影响当前选择。这极大地有助于将给定工具提示适用的项目与列表视图相关联 - 尤其是在报告模式下。

但是,我目前无法找到任何可以使我的MFC应用程序的CListCtrl具有相同行为的API。扩展样式只有LVS_EX_TRACKSELECT,它实际上改变了当前的选择(哎呀!)。

有没有人知道如何提供标准的CListCtrl(或实际上位于其上的任何东西)鼠标热跟踪功能?

我发现了一些关于如何提供每个单元格和每行工具提示文本的文章,但是如果没有突出显示的内容,很难说出工具提示的相关内容......

2 个答案:

答案 0 :(得分:2)

包含LVS_EX_TWOCLICKACTIVATE或LVS_EX_ONECLICKACTIVATE的扩展样式。这被称为“热跟踪”(与热轨选择相反)。 http://msdn.microsoft.com/en-us/library/bb774732%28VS.85%29.aspx

答案 1 :(得分:2)

您可以将资源管理器主题设置为列表控件。这样它会更好看,你也会得到你想要的亮点:

SetWindowTheme(hListControl, L"Explorer", NULL);