在sizer中获取鼠标位置?wxpython

在sizer中获取鼠标位置?wxpython,python,wxpython,Python,Wxpython,可以使用 event.GetPosition() 然而,是否有可能获得鼠标在测码器中的位置?即使在扩容器中也能起作用吗 谢谢。施胶器不适用于绝对定位。它们用于相对定位。Sizer最擅长在多个平台和主题之间让您的布局看起来恰到好处。如果您确实希望能够在特定的x-y坐标处插入内容,则不要使用尺寸标注器。尺寸标注器中的x,y位置与尺寸标注器所属的窗口完全相同,假设尺寸标注器是分配给该窗口的尺寸标注器。如果您有嵌套的sizer,那么可以使用sizer.GetPosition和sizer.GetSize来

可以使用

event.GetPosition()

然而,是否有可能获得鼠标在测码器中的位置?即使在扩容器中也能起作用吗


谢谢。

施胶器不适用于绝对定位。它们用于相对定位。Sizer最擅长在多个平台和主题之间让您的布局看起来恰到好处。如果您确实希望能够在特定的x-y坐标处插入内容,则不要使用尺寸标注器。

尺寸标注器中的x,y位置与尺寸标注器所属的窗口完全相同,假设尺寸标注器是分配给该窗口的尺寸标注器。如果您有嵌套的sizer,那么可以使用sizer.GetPosition和sizer.GetSize来确定位置是否在嵌套的sizer内


然而,我想知道鼠标在施胶器中的位置并不是很有用。您可能想知道鼠标位置在sizer中的哪个项目上,比如HitTest类型的方法。您可以使用sizer.GetChildren()方法实现类似的功能,并迭代其项(它们是wx.SizerItem对象),查看该项的位置和大小,以找到其中包含该点的项。如果该项目是一个大小调整器,那么您可以递归地下降到该大小调整器并执行相同的操作,直到在所需的点找到叶项目。

您试图实现什么?为什么你需要鼠标相对于测码器边缘的位置?这很难解释,但基本上,当用户点击测码器上的某个位置时,就可以在该测码器中的鼠标坐标处创建图像。