Win32 API GetMessage () - PullRequest
       38

Win32 API GetMessage ()

2 голосов
/ 18 октября 2011

Я хочу изменить стандартное поведение комбинированного списка (c ++, win32 api).Я делаю выпадающий список, когда что-то вводится в его элемент управления для редактирования. Я хочу избежать поведения по умолчанию, при котором выпадающий список ищет первое совпадение в списке, выбирает его и вводит выбранную строку в элемент управления для редактирования.Могу ли я подавить это поведение, перехватывая соответствующие (LB_SETCURSEL и т. Д.) Сообщения из очереди сообщений самостоятельно с помощью GetMessage ()?

У кого-нибудь есть другое представление о том, как это сделать?

Встречает Михбека

1 Ответ

1 голос
/ 18 октября 2011

Вы, вероятно, хотите реализовать Подклассы окна . Это позволяет вам вставить собственную функцию WndProc в элемент управления combobox, который вызывается до вызова собственного элемента управления WndProc. Вы можете отфильтровывать (и удалять) сообщения окна, которые вы не хотите, чтобы элемент управления получал.

Я сейчас не загружаюсь в свой раздел Windows, чтобы запускать Spy ++ в поле со списком, чтобы посмотреть, какие сообщения он действительно получает. Я предполагаю, что вы хотите отфильтровать WM_CHAR от получения в комбобоксе.

...