我正在学习 wxpython 并试图让嵌套面板工作。这是为更复杂的屏幕做准备的练习,因此它可能看起来有点复杂,但这是有目的的;)。我想要做的是: 创建一个顶部框架 向其中添加一个面板 向其中添加一些文本和一个输入字段 使用垂直 boxsizer 进行面板布局 这是我实现它的方法:
import wx
class MainWindow(wx.Frame):
def __init__(self, parent, title):
wx.Frame.__init__(self, parent)
#add position panel
posPnl = wx.Panel(self)
lbl1 = wx.StaticText(posPnl, label="Position")
lbl2 = wx.StaticText(posPnl, label="Size")
sizeCtrl = wx.TextCtrl(posPnl)
posPnlSzr = wx.BoxSizer(wx.HORIZONTAL)
posPnlSzr.Add(lbl1, 1, wx.GROW)
posPnlSzr.Add(sizeCtrl, 1, wx.GROW)
posPnlSzr.Add(lbl2, 1, wx.GROW)
#create a top leverl sizer to add to the frame itself
mainSzr = wx.BoxSizer(wx.VERTICAL)
mainSzr.Add(posPnlSzr)
self.SetSizerAndFit(mainSzr)
self.Show()
app = wx.App(False)
frame = MainWindow(None, "Trading Client")
app.MainLoop()
我得到的只是一个带有“Pos”字样的小空白屏幕。我在这里做错了什么?