Вопрос

Я хочу изменить поведение по умолчанию ComboBox (C ++, Win32 API). Я заставляю ComboBox сбросить, когда что -то вводится в его редактировании, я хочу избежать поведения по умолчанию, которое ComboBox ищет первое совпадение в списке, выбирает ее и вводит выбранную строку в элемент управления редактированием. Могу ли я подавить это поведение, поймав соответствующие (lb_setcursel и т. Д.))

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

Приветствует Мичбек

Это было полезно?

Решение

Вы, вероятно, хотите реализовать Окно подкласс. Анкет Это позволяет вам вставить свою собственную функцию wndproc в управление ComboBox, которая вызывается до того, как называется собственная WNDPROC управления. Вы можете отфильтровать (и отбрасывать) окно -сообщения, которые вы не хотите, чтобы управление получило.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top