1

我希望能够在 win32 应用程序中的鼠标光标位置显示一些动态文本,例如给出一个 X,Y 坐标,该坐标将随着光标移动,就好像附加了一样。我可以在 mousemove 事件期间使用鼠标坐标处的窗口的 TextOut() 调用来执行此操作,并使存储的最后一个光标位置周围的矩形无效以清除先前的输出。然而,这可能会受到闪烁的影响,并导致在窗口中绘制其他内容(例如跟踪框)时出现问题。有没有更好的方法来做到这一点,也许使用现有的光标绘制/无效机制?

4

3 回答 3

2

您可以通过 ToolTips 执行此操作 - 查看CToolTipCtrl

如果您想要无闪烁跟踪工具提示,那么您需要从使用trackActivate消息的 CToolTipCtrl 派生您自己的类。

于 2008-09-15T15:38:11.333 回答
1

您可能需要考虑移动一个小的透明窗口以跟随鼠标。特别是从 Windows 2000 开始,分层窗口似乎是首选武器(坦白:没有个人经验)。

于 2008-09-15T20:17:32.613 回答
0

您可以覆盖 OnSetCursor 以获取动态鼠标光标。我刚刚找到了一个德语教程。

德语教程

英文翻译教程

于 2013-01-16T09:37:42.997 回答