【问题标题】:How do I display dynamic text at the mouse cursor via C++/MFC in a Win32 application如何在 Win32 应用程序中通过 C++/MFC 在鼠标光标处显示动态文本
【发布时间】:2010-09-08 23:18:16
【问题描述】:

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

【问题讨论】:

    标签: c++ winapi mfc


    【解决方案1】:

    您可以通过工具提示执行此操作 - 请查看 CToolTipCtrl

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        【解决方案3】:

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

        German tutorial

        English translated tutorial

        【讨论】:

          猜你喜欢
          • 2012-09-06
          • 2012-01-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-09-22
          • 2023-03-26
          • 2018-06-04
          • 1970-01-01
          相关资源
          最近更新 更多