【问题标题】:WxPython Updating Frame to show buttonsWxPython 更新框架以显示按钮
【发布时间】:2011-09-24 17:41:00
【问题描述】:

我是 wx 小部件的新手。我正在尝试制作一个 GUI,我必须在其中根据某些条件显示某些按钮。问题是当我在 Frame.show() 之后创建这个新按钮时,该按钮是不可见的,直到我将鼠标移到按钮应该在的位置上。我试过 Frame.Refresh() 但这不起作用。

self.button = wx.Button(panel, 1, 'Delete', (230, 120))
self.Bind(wx.EVT_BUTTON, self.delSong, self.button)
self.button2 = wx.Button(panel, 3, 'Refresh', (130, 120))
self.Bind(wx.EVT_BUTTON, self.shelving, self.button2)
self.button.Disable()
self.button2.Enable()
self.button3 = wx.Button(panel, 1, 'Exit', (230, 120))
self.Bind(wx.EVT_BUTTON, self.close, self.button3)
self.button3.Hide()
self.Show()

try: 
    fooo
except KeyError:
    self.button.Destroy()
    self.button3.Show()

我在这里要做的是删除按钮并显示 button3。但是如果出现异常,则 button3 不会显示在框架中。还有什么东西可以刷新框架吗?

【问题讨论】:

    标签: python wxpython


    【解决方案1】:

    您可能只需要调用 Frame 的 Layout() 方法。这就是我插入或删除小部件时所做的。我还建议学习 sizers,因为它们对于自动调整大小和定位非常方便。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-18
      • 2016-11-13
      • 1970-01-01
      • 2019-09-25
      相关资源
      最近更新 更多