Какой самый правильный способ скрыть всплывающее окно автозаполнения? - PullRequest
2 голосов
/ 13 мая 2009

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

UPD: отслеживание фокуса клавиатуры не подходит, так как перетаскивание родительского окна должно также скрывать раскрывающийся список.

UPD: захват мыши не работает, потому что он «захватывает ввод мыши либо когда мышь находится над окном захвата, либо когда кнопка мыши была нажата, когда мышь находилась над окном захвата, а кнопка все еще нажата».

Ответы [ 2 ]

2 голосов
/ 13 мая 2009

После прочтения этой статьи Теперь я считаю, что использование SetWindowsHookEx и хука WH_MOUSE - это путь.

Но может быть, есть более простое решение?

0 голосов
/ 14 мая 2009

Автозаполнение является родным в Win32 API (Shell)
Вам не нужен код.
(Исходный код автозаполнения оболочки Windows см. На Win32 group )

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