【问题标题】:Manually trigger a wx.EVT_SIZE event手动触发 wx.EVT_SIZE 事件
【发布时间】:2014-01-31 13:00:14
【问题描述】:

为了刷新我的 GUI,有时self.Refresh()self.Layout() 不会产生我想要的结果。

唯一有效并真正刷新 GUI 的是:使用

手动触发 wx.EVT_SIZE
s = self.GetSize()
self.SetSize((0,0))
self.SetSize(s)

有没有一种更清洁的方法来手动触发wx.EVT_SIZE

【问题讨论】:

    标签: python wxpython wxwidgets


    【解决方案1】:

    使用wxWindow::PostSizeEvent()

    但是请注意,如果您避免手动处理 wxEVT_SIZE(根据您的其他问题,您似乎正在这样做)并且只使用 sizers,那么简单的 Layout() 就足够了。

    而且,FWIW,Refresh() 根本与大小无关,它只会导致重新绘制窗口,即可用于触发对您的 wxEVT_PAINT 的调用,而不是 wxEVT_SIZE,处理程序。

    【讨论】:

    • 谢谢。你知道wxpython里面是怎么叫的吗?
    猜你喜欢
    • 1970-01-01
    • 2019-12-20
    • 1970-01-01
    • 1970-01-01
    • 2020-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多