Остановить немедленное исчезновение всплывающих окон Windows, если они перекрывают текущую позицию мыши при создании - PullRequest
0 голосов
/ 08 ноября 2011

Я пишу собственный обработчик всплывающей подсказки - C ++ / Windows XP..7.

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

Однако, когда я говорю, что он появляется, если он вообще перекрывает курсор мыши, он немедленно исчезает (без моего кода, запрашивающего это).

В этой статье описан набросок идеи: http://msdn.microsoft.com/en-us/library/windows/desktop/hh298405%28v=VS.85%29.aspx

И мы, по сути, делаем именно это ... но если мышь и всплывающая подсказка перекрываются, всплывающая подсказка немедленно исчезает (мигает на долю секунды). Невероятно раздражает.

Кто-нибудь знает что-нибудь об этом ?? (то есть, как остановить его исчезновение)

1 Ответ

1 голос
/ 08 ноября 2011

Если вы забудете расширенный стиль WS_EX_TRANSPARENT, события мыши перейдут во всплывающую подсказку, в результате чего мышь больше не будет рассматривать поверх базового объекта, что приведет к отклонению всплывающей подсказки (поскольку она появляется только при нажатии мыши находится над основным объектом). Вы хотите установить расширенный стиль WS_EX_TRANSPARENT, чтобы сказать: «Хотя мышь физически находится над подсказкой, логически она находится над базовым объектом». Пример кода доступен здесь .

...