Python 手动触发wx.EVT_大小事件
为了刷新我的GUI,有时Python 手动触发wx.EVT_大小事件,python,wxpython,wxwidgets,Python,Wxpython,Wxwidgets,为了刷新我的GUI,有时self.refresh(),self.Layout()不会产生我想要的结果 唯一有效并真正刷新GUI的方法是:使用 s = self.GetSize() self.SetSize((0,0)) self.SetSize(s) 是否有更干净的方法手动触发wx.EVT_SIZE?使用wxWindow::PostSizeEvent() 但是,请注意,如果您避免手动处理wxEVT_SIZE(这似乎是基于您的其他问题而做的),而只是使用大小调整器,那么简单的Layout()就足
self.refresh()
,self.Layout()
不会产生我想要的结果
唯一有效并真正刷新GUI的方法是:使用
s = self.GetSize()
self.SetSize((0,0))
self.SetSize(s)
是否有更干净的方法手动触发
wx.EVT_SIZE
?使用wxWindow::PostSizeEvent()
但是,请注意,如果您避免手动处理wxEVT_SIZE
(这似乎是基于您的其他问题而做的),而只是使用大小调整器,那么简单的Layout()
就足够了
而且,FWIW,
Refresh()
与大小没有任何关系,它只会导致重新绘制窗口,即可以用来触发调用您的wxEVT\u PAINT
,而不是wxEVT\u size
,处理程序。使用wxWindow::PostSizeEvent()
但是,请注意,如果您避免手动处理wxEVT_SIZE
(这似乎是基于您的其他问题而做的),而只是使用大小调整器,那么简单的Layout()
就足够了
而且,FWIW,
Refresh()
与大小没有任何关系,它只会导致重新绘制窗口,即可以用来触发调用您的wxEVT\u PAINT
,而不是wxEVT\u size
,处理程序。谢谢。您知道在wxpython
中它是如何调用的吗?谢谢。您知道在wxpython
中如何调用它吗?