gpt4 book ai didi

python - 无法将 BoxSizer 放入 wxpython 中的笔记本中

转载 作者:太空宇宙 更新时间:2023-11-04 11:19:01 24 4
gpt4 key购买 nike

我正在尝试将登录/密码页面放入 wx.Notebook 的一个选项卡中。但是 wx.BoxSizer 不起作用 - 它堆积了标签和按钮。

这是我的代码。

    # Define the tab content as classes:
class TabOne(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)

# USERNAME LABEL
user_sizer = wx.BoxSizer(wx.HORIZONTAL)
user_lbl = wx.StaticText(self, label="Username:")
user_sizer.Add(user_lbl, 0, wx.ALL | wx.CENTER, 5)

# USERNAME CONTROL TEXT
self.user = wx.TextCtrl(self)
user_sizer.Add(self.user, 0, wx.ALL | wx.CENTER, 5)

# Password LABEL
password_sizer = wx.BoxSizer(wx.HORIZONTAL)

pass_lbl = wx.StaticText(self, label="Password:")
password_sizer.Add(pass_lbl, 0, wx.ALL | wx.CENTER, 5)

# PASSWORD CONTROL TEXT
self.password = wx.TextCtrl(self, style=wx.TE_PASSWORD | wx.TE_PROCESS_ENTER)
password_sizer.Add(self.password, 0, wx.ALL, 5)

# MAIN SIZER FOR TAB A
main_sizer = wx.BoxSizer(wx.VERTICAL)
main_sizer.Add(user_sizer, 0, wx.ALL, 5)
main_sizer.Add(password_sizer, 0, wx.ALL, 5)

login_btn = wx.Button(self, label="Login")
login_btn.Bind(wx.EVT_BUTTON,
handler=self.onLogin)

wx.Panel.SetSizer(main_sizer)

def onLogin(self):
return self.bot.login(username=self.user, password=self.password, use_cookie=True)

最佳答案

问题是您以错误的方式分配了 main_sizer。将 wx.Panel.SetSizer(main_sizer) 行更改为 self.SetSizer(main_sizer)。您的 TabOne 类来自 wx.Panel,因此您将以相同的方式让您的小部件成为 self 的 child ,您将把 main_sizer 分配给 self。

关于python - 无法将 BoxSizer 放入 wxpython 中的笔记本中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56395346/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com