Okay, I've emailed wxpython-users; we'll see what they have to say about it.
EDIT: okay, problem solved. The automatic resizing I mentioned apparently only goes one "layer" deep -- a Panel in a Frame will resize automatically, but the contents of that Panel will not. The solution is to stick the TextCtrl inside a Sizer and set the Sizer on the Panel. Try changing the constructor for the MessageFrame to this:
EDIT: okay, problem solved. The automatic resizing I mentioned apparently only goes one "layer" deep -- a Panel in a Frame will resize automatically, but the contents of that Panel will not. The solution is to stick the TextCtrl inside a Sizer and set the Sizer on the Panel. Try changing the constructor for the MessageFrame to this:
Code:
def __init__(self, parent):
wx.Frame.__init__(self, parent, title = "Message history")
panel = wx.Panel(self)
sizer = wx.BoxSizer()
self.text = wx.TextCtrl(panel, style = wx.TE_MULTILINE)
sizer.Add(self.text, 1, wx.EXPAND)
panel.SetSizer(sizer)
(Though you can still type in the message window! :P)

)
Comment