【问题标题】:wxpython tooltip at specific coordinates特定坐标处的 wxpython 工具提示
【发布时间】:2015-03-15 10:24:44
【问题描述】:

我见过很多类似的问题,这些答案让我走到了这一步。

我有一个应用程序,其中所有对象都是通过 DC 创建的,所以它们都被绘制了。 (我在 sizers 方面有很多经验,并且 99% 的时间 sizers ROCK 但在这种情况下 DC 是最好的答案。)所以我想为每个绘制的元素提供一个工具提示,以防屏幕刷新并且元素被绘制在不同的位置,工具提示也应该移动。我的第一次尝试是为每个绘制的项目设置一个 wx.Rect,但我遇到了“挂起”的情况。如果我在正确的轨道上,我会附上一个代码示例,但如果我应该在另一棵树上吠叫,请在我把这根头发拔掉之前告诉我!!!!

【问题讨论】:

    标签: wxpython tooltip coordinates paint


    【解决方案1】:

    我不喜欢这种方式,但至少它有效:

    def on_tree_task_tooptip(self, event):
        """Handles tree task tooltips"""
        self.m_tree.SetToolTip(None)
        wx.YieldIfNeeded()
        self.m_tree.SetToolTip("my new tooltip")
    

    【讨论】:

      【解决方案2】:

      你应该试试BalloonTip

      http://wxpython.org/Phoenix/docs/html/lib.agw.balloontip.html

      它为工具提示创建一个新的Frame,并根据对象的坐标进行设置。

      【讨论】:

      • BallonTip 是否可以设置坐标?从示例中我看到它可以设置为一个对象,但是当我绘制所有内容时,我需要能够将提示设置为坐标。
      • 它直接不提供此功能。但是您可以通过覆盖BalloonFrameSetBalloonShape 方法来实现这一点。它在那里使用鼠标位置,但您可以为那里的位置指定不同的计算。
      • 我能够使用默认工具提示解决我的问题。我必须确保矩形线与每个绘制元素的线相同。 BallonTip 是我以前从未听说过的东西,是第二个不错的选择,所以我接受它作为我问题的一个很好的答案。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多