在wx.DC中绑定对象的最佳解决方案是什么?

时间:2010-08-26 14:24:11

标签: python user-interface wxpython

因此,例如我在wx.PaintDC上绘制了一些对象,例如直线和矩形。 现在我想要下一个:点击鼠标我不知道点击了哪个对象。 当然,我可以看到哪个对象最接近,但更准确的答案呢?

甚至可能不是标准的wx.DC,而是像FloatCanvas这样的东西。

那么,什么是最好的解决方案?

2 个答案:

答案 0 :(得分:1)

您可以使用PseudoDC and its FindObjects method

在我的绘图程序中,Whyteboard我使用了大量的数学,多态类等,以允许用户使用选择绘图工具“点击测试”绘制的项目。

你也可以用FloatCanvas做到这一点,它提供了HitTest(x,y)(在我的头脑中)应该做你想要的方法。但是,我不确定您将应用程序转换为使用它有多难。

答案 1 :(得分:0)

在事件处理程序中调用event.GetEventObject()会为您提供所需的对象吗?