MFC / WIN32: выделение при наведении мыши в listctrl - PullRequest
1 голос
/ 20 марта 2010

Элемент управления ListView в проводнике Windows выделяет любой элемент, находящийся под мышью, не влияя на текущий выбор.Это очень помогает в определении того, к какому элементу относится данная всплывающая подсказка в просмотре списка, особенно в режиме отчета.

Однако в настоящее время я не могу найти API, которые бы обеспечивали CListCtrl моего приложения MFC такое же поведение.Расширенные стили имеют только LVS_EX_TRACKSELECT, который фактически изменяет текущее выделение (чёрт!).

Кто-нибудь знает, как обеспечить стандартный CListCtrl (или что-то еще, что на самом деле находится сверху) возможностью горячего отслеживания мыши?

Я нашел несколько статей о том, как предоставлять подсказки для каждой ячейки и строки, но трудно сказать, к чему относятся подсказки, без выделения чего-либо ...

Ответы [ 2 ]

2 голосов
/ 20 марта 2010

Вы можете установить тему проводника в свой список управления. Таким образом, он будет выглядеть лучше, и вы также получите нужную подсветку:

SetWindowTheme(hListControl, L"Explorer", NULL);
2 голосов
/ 20 марта 2010

Включите расширенный стиль LVS_EX_TWOCLICKACTIVATE или LVS_EX_ONECLICKACTIVATE. Это называется «горячим отслеживанием» (в отличие от выбора «горячего следа»). http://msdn.microsoft.com/en-us/library/bb774732%28VS.85%29.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...