在最小化之后,我很难恢复窗口。
最小化工作正常,但我正在尝试重新打开窗口.. self
恢复,但Vodka_Frame没有。
这是我的代码:
def minimizeProgram(event):
self.Iconize()
Vodka_Frame.Iconize()
def maximizeProgram(event):
if self.IsIconized()=='True' or Vodka_Frame.IsIconized()=='True':
self.Iconize(False)
Vodka_Frame.Iconize(False)
self.Show(True)
Vodka_Frame.Show(True)
self.Raise()
Vodka_Frame.Raise()
#### Catch the minimize event and minimize both windows.
self.Bind(wx.EVT_ICONIZE,minimizeProgram)
#### Catch the maximize event and maximize both windows.
self.Bind(wx.EVT_LEFT_DCLICK,maximizeProgram)
我做错了什么?我怎样才能让我的窗户回来! :)
答案 0 :(得分:1)
如果没有一个小的可运行的例子,我不确定你做错了什么。但是,我创建了以下适用于我的简单脚本:
import wx
########################################################################
class MyPanel(wx.Panel):
""""""
#----------------------------------------------------------------------
def __init__(self, parent):
"""Constructor"""
wx.Panel.__init__(self, parent)
########################################################################
class MyFrame(wx.Frame):
""""""
#----------------------------------------------------------------------
def __init__(self):
"""Constructor"""
wx.Frame.__init__(self, parent=None, title="Test")
panel = MyPanel(self)
self.timer = wx.Timer(self)
self.Bind(wx.EVT_TIMER, self.toggleIconize, self.timer)
self.timer.Start(5000)
self.Show()
#----------------------------------------------------------------------
def toggleIconize(self, event):
""""""
if self.IsIconized() == True:
print "raising..."
self.Iconize(False)
self.Raise()
else:
print "minimizing!"
self.Iconize()
if __name__ == "__main__":
app = wx.App(False)
frame = MyFrame()
app.MainLoop()
基本上它只是每5秒钟最小化一次。我在Windows 7 Pro上使用Python 2.6.6和wxPython 2.8.12.1。
答案 1 :(得分:0)
您的帧之间的关系不明确,但如果您将另一帧作为主帧的子帧(即在创建它时将主帧指定为其父帧),则它将被最小化并在主帧时自动恢复最小化或恢复,无需你做任何特别的事情。