如何判断一个孩子wx.面板是放在另一个孩子的上面还是下面?

2024-05-17 03:18:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个wx.面板里面有多个孩子。你知道吗

我如何判断,当放置另一个孩子,如果它没有踩到一个已经放置的孩子?你知道吗

(我的意思是,我可以想出一个解决办法,在这个办法中,我把孩子们的名单写下来,得到他们所有的位置和大小,然后做数学。。。。但我想知道是否还有更简单的解决方案)

[编辑]:我需要在父面板上有多个具有轮廓的面板,以及连接子面板的线。这样做的目的是能够判断一条线是否没有穿过另一个面板。你知道吗


Tags: 目的面板编辑孩子数学解决方案轮廓wx
2条回答

属于windows的组件(wx.面板, wx.静态线etc)有一个返回wx矩形. 你知道吗

wx.Rect有一个方法.Intersects(self, otherRect),如果两个元素重叠,该方法将返回true。你知道吗

还有一个wx.Rect2D,它有一些传统的功能——插值、获取交集和并集等

我的建议是通过使用尺寸器来放置孩子来避免这个问题。简单多了。你知道吗

我从您的编辑中看到,您并不关心重叠的小部件,正如您问题的标题所示,而是关心一行是否与小部件重叠。你知道吗

对于这个不同的问题,我的建议是研究如何使用GraphViz(http://www.graphviz.org/),它将计算有效的布局,使重叠最小化,并且通常完全消除重叠。对于可以实现的相同示例,请看http://ravenspoint.com/maps.html

相关问题 更多 >