wxPython - wx.ChildFrame
Posted
by Dunwitch
on Stack Overflow
See other posts from Stack Overflow
or by Dunwitch
Published on 2010-03-26T22:58:10Z
Indexed on
2010/03/26
23:03 UTC
Read the original article
Hit count: 212
wxpython
I'm sure this is simple, but I can't seem to find the answer. While using wx.MDIParentFrame, I open a new window with wx.MDIChildFrame. There is static text on the ParentFrame, and once the ChildFrame opens the text gets erased from the ParentFrame?
import wx
class Frame(wx.MDIParentFrame):
def __init__(self):
wx.MDIParentFrame.__init__(self, None, -1, "Main Window", size=(800,600), style=wx.DEFAULT_FRAME_STYLE | wx.FRAME_NO_WINDOW_MENU)
menu = wx.Menu()
menu.Append(100, "&New Window")
menu.Append(101, "E&xit")
menubar = wx.MenuBar()
menubar.Append(menu, "&File")
self.SetMenuBar(menubar)
self.Bind(wx.EVT_MENU, self.OnNewWindow, id=100)
self.Bind(wx.EVT_MENU, self.OnExit, id=101)
self.Center()
background_text = wx.StaticText(self, id=-1, label="This is background text", pos = (20, 250))
def OnExit(self, evt):
self.Close(True)
self.Destroy()
def OnNewWindow(self, evt):
win = wx.MDIChildFrame(self, -1, "Child Window", size = (300, 300), style=wx.DEFAULT_FRAME_STYLE ^ (wx.MAXIMIZE_BOX | wx.RESIZE_BORDER))
win.SetBackgroundColour("#BB00e0")
win.Show(True)
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = Frame()
frame.Show()
app.MainLoop()
© Stack Overflow or respective owner