MFC: Как определить выделенный в данный момент элемент в списке CComboBox (НЕ выбранный элемент) - PullRequest
0 голосов
/ 17 августа 2011

Это похоже, НО НЕ ТО ЖЕ, как вопросы C #, но, как все знают, MFC - это не .NET.Объекты MFC НЕ имеют те же свойства времени выполнения, что и объекты .NET.

Ответы [ 2 ]

1 голос
/ 19 августа 2011

Используя механизм рисования владельца (даже если это простой текстовый список), обратный вызов имеет флаги / атрибуты, которые показывают, какую запись необходимо «выделить», и мы публикуем уведомление о том, какой элемент в данный момент «выделен» .

Сложность была НАМНОГО меньше, чем попытка реализовать базовую функциональность ComboBox в элементе управления ComboBoxEx (например, базовые стили ComboBox НЕ применяются к ComboBoxEx - не спрашивайте).

0 голосов
/ 18 августа 2011

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

Мне не нравится информация, которую вы получаете с этим сообщениемможет помочь, но если вам действительно нужно знать выделенный элемент, возможно, вы могли бы рассчитать его на основе положения мыши и высоты каждого элемента.Немного сложно, но возможно.

Надеюсь, это поможет.

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