我有3个版面,第2个版面的大小取决于2个版面的子版面的宽度:
def on_size(self, *args):
self.left_panel.width = max(child.texture_size[0] for child in self.left_panel.children) + self.side_padding
self.right_panel.width = max(child.texture_size[0] for child in self.right_panel.children) + self.side_padding
available_space = self.width - self.left_panel.width - self.right_panel.width
if available_space > self.height:
self.middle_panel.size = (self.height, self.height)
extra = (self.width - self.height - self.left_panel.width - self.right_panel.width) // 2
self.left_panel.width += extra
self.right_panel.width += extra
else:
self.middle_panel.size = (available_space, available_space)
self.middle_panel.calculate_points()
self.middle_panel.clear_widgets()
self.middle_panel.redraw_blocks()
由于某种原因,它只能在50%的情况下(随机)正常工作。如果它加载worng,它将在我调整窗口大小后变得正确。现在,当另外两个布局的每个子布局的on_size()
触发时,我也会调用它,这是个坏主意。当所有的东西都被加载/呈现时,是否会发生一些事件?在
更新:
这就是它应该是这样的(有时也是如此)。
但有时下一个问题会随机发生(见右边的按钮):
更新:
现在我称之为:
^{pr2}$我知道这不是个好主意,因为它会触发smth 30-50次,但我无法更好地发明smth。在
目前没有回答
相关问题 更多 >
编程相关推荐