Как мне отобразить динамический текст при наведении курсора мыши с помощью C ++ / MFC в приложении Win32

StackOverflow https://stackoverflow.com/questions/63429

  •  09-06-2019
  •  | 
  •  

Вопрос

Я хотел бы иметь возможность отображать некоторый динамический текст при наведении курсора мыши в приложении win32, например, для указания координат X, Y, которые перемещались бы с курсором, как если бы он был прикреплен.Я могу сделать это во время событие mousemove с помощью TextOut() вызов окна на мышь координаты и недействительным прямоугольника вокруг хранимой последнему положению курсора чтобы прояснить предыдущий результат.Однако это может привести к мерцанию и вызвать проблемы с другими объектами, отображаемыми в окне, такими как рамки трекера .Есть ли лучший способ сделать это, возможно, используя существующий механизм рисования / аннулирования курсора ?

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

Решение

Возможно, вы захотите рассмотреть небольшое прозрачное окно, которое вы перемещаете вслед за мышью.В частности, начиная с Windows 2000, Многослойный windows, похоже, является предпочтительным оружием (признание:никакого личного опыта там нет).

Другие советы

Вы можете сделать это с помощью всплывающих подсказок - ознакомьтесь CToolTipCtrl.

Если вам нужны всплывающие подсказки для отслеживания без мерцания, вам нужно будет вывести свои собственные классы из CToolTipCtrl, которые используют Отслеживать активацию Сообщения.

Вы можете перезаписать OnSetCursor, чтобы получить динамический курсор мыши.Я только что нашел учебник немецкого языка.

Учебник немецкого языка

Учебник, переведенный на английский язык

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