Wxpython wx.出于某种原因的布局”;删除“;来自面板的小部件

Wxpython wx.出于某种原因的布局”;删除“;来自面板的小部件,wxpython,wxwidgets,Wxpython,Wxwidgets,我试图学习wxPython,但遇到了一个布局问题。我尝试将一组小部件放在单独的面板中,以便将来管理它们的位置\大小。但由于某些原因,对“顶块”面板工作良好的代码对“Mods”面板不起作用 我在谷歌上搜索了Layout()函数,但由于某些原因,它在“Top block”和“Mods”中的行为有所不同。它没有重新排列小部件,而是将它们全部放在面板顶部的细线中。我不能发布图片,但我可以提供截图 class ItemInfo(wx.Frame): 定义初始化(自身、父项、项、*args): 超级(Ite

我试图学习wxPython,但遇到了一个布局问题。我尝试将一组小部件放在单独的面板中,以便将来管理它们的位置\大小。但由于某些原因,对“顶块”面板工作良好的代码对“Mods”面板不起作用

我在谷歌上搜索了Layout()函数,但由于某些原因,它在“Top block”和“Mods”中的行为有所不同。它没有重新排列小部件,而是将它们全部放在面板顶部的细线中。我不能发布图片,但我可以提供截图

class ItemInfo(wx.Frame):
定义初始化(自身、父项、项、*args):
超级(ItemInfo,self)。\uuuuu初始化\uuuuuu(父级)
自尺寸=宽x尺寸(500600)
self.current\u item=self.find\u current\u item(item)
common\u item\u types=Storage.ItemStorage.get\u common\u item\u keys()
#self.Bind(wx.EVT\u SHOW,self.SHOW\u current\u item\u stats)
mod_list=[]
mod_list.append(“无”)
对于键,存储中的值。item_Storage.mod_dict.items():
mod_list.append(键)
# Главная панель
主面板=wx.面板(自)
主面板.立根基色(“#484f49”)
##============================= Шрифты ===============================##
label_font=wx.font(16,wx.FONTFAMILY_ROMAN,wx.FONTSTYLE_NORMAL,wx.FONTWEIGHT_粗体,False)
子标签字体=wx.font(12,wx.FONTFAMILY\U ROMAN,wx.FONTSTYLE\U NORMAL,wx.FONTWEIGHT\U粗体,False)
stat_font=wx.font(16,wx.FONTFAMILY_ROMAN,wx.FONTSTYLE_NORMAL,wx.FONTWEIGHT_NORMAL,False)
# ============================= Заголовок ======================================
标签面板=wx.面板(主面板,位置=(0,0))
标签面板设置尺寸(500,30)
标签#U面板立根底色('#46f057')
label_text=wx.StaticText(label_面板,label=“项目信息”)
label\u text.SetFont(label\u font)
标签_text.setForeGroundColor(“#6b756c”)
标签\文本设置位置((170,5))
##================================================================顶块==========================
顶部面板=wx.面板(主面板,位置=(10,30))
顶部面板设置尺寸(470,70)
顶面板.立根底色(“#1271e6”)
顶部尺寸=宽x.BoxSizer(宽x.水平)
# Создаем коробку с именем предмета
项目名称尺寸=wx.BoxSizer(wx.VERTICAL)
项目名称标签=wx.StaticText(顶部面板,标签=“当前项目名称”)
项目名称标签。设置字体(子标签字体)
item\u name\u ctrl=wx.TextCtrl(顶部面板,值=self.current\u item.name)
项目名称施胶器。添加垫片(7)
项目名称尺寸器。添加(项目名称标签,0,宽x。对齐中心水平)
项目名称施胶器。添加垫片(5)
item\u name\u sizer.Add(item\u name\u ctrl,wx.EXPAND)
顶部尺寸。添加(项目名称尺寸,0,wx.LEFT | wx.RIGHT,border=5)
# Создаем коробку с типом предмета
项目尺寸=wx.BoxSizer(wx.VERTICAL)
item_key_label=wx.StaticText(顶部面板,label=“item key”)
item_key_label.SetFont(子标签字体)
item\u key\u cbox=wx.ComboBox(顶部面板,值=self.current\u item.key,选项=common\u item\u类型)
项目\键\施胶器。添加垫片(7)
添加(项目编号标签,0,宽x,对齐中心水平)
项目\键\施胶器。添加垫片(5)
item_key_sizer.Add(item_key_cbox,wx.EXPAND)
顶部尺寸。添加(项目尺寸,0,wx.LEFT | wx.RIGHT,边框=5)
# Создаем коробку с редкостью предмета
项目稀有性尺寸=wx.BoxSizer(wx.VERTICAL)
item_rarity_label=wx.StaticText(顶部面板,label=“item rarity”)
项目_稀有性_标签.SetFont(子标签_字体)
item_rarity_cbox=wx.ComboBox(顶部面板,值=self.current_item.rarity.key,选项=BaseStats.rarity_列表)
项目_稀有性_尺寸测定器。添加间隔棒(7)
添加(项目稀有性标签,0,宽x.对齐中心水平)
项目_稀有性_尺寸测定器。添加间隔棒(5)
item_rarity_sizer.Add(item_rarity_cbox,wx.EXPAND)
顶部尺寸。添加(项目罕见尺寸,0,wx.LEFT | wx.RIGHT,边框=5)
顶部面板设置器(顶部施胶器)
顶部面板布局()
#=================================================Mods==================================
模块面板=wx.面板(主面板,位置=(10200))
模块面板设置尺寸(470,70)
模块面板立根底色('6b756c')
#mod_sizer=wx.BoxSizer(wx.VERTICAL)
mod_intermediate_sizer=wx.BoxSizer(wx.HORIZONTAL)
# Коробка с первым модом
first_mod_sizer=wx.BoxSizer(wx.VERTICAL)
first_mod_label=wx.StaticText(mod_面板,label=“first mod”)
第一个_mod_label.SetFont(子标签_font)
第一个模块cbox=wx.ComboBox(模块面板,值=self.current项目。模块列表[0]。键,选项=模块列表)
第一个模块施胶器。添加垫片(7)
第一个尺寸标注器。添加(第一个尺寸标注标签,0,标志=wx。对齐中心水平)
第一个模块施胶器。添加垫片(20)
first_mod_sizer.Add(first_mod_cbox,flag=wx.EXPAND)
mod_mediate_sizer.Add(第一个mod_sizer,0,wx.LEFT | wx.RIGHT,border=5)
# Коробка со вторым модом
第二个尺寸=wx.BoxSizer(wx.VERTICAL)
second_mod_label=wx.StaticText(mod_面板,label='second mod')
第二个_mod_label.SetFont(子标签_font)
第二个模块cbox=wx.ComboBox(模块面板,值=self.current\u项。模块列表[1]。键,
选项=mod_列表)
第二个模块施胶器。添加垫片(7)
第二个尺寸标注器。添加(第二个尺寸标注标签,0,标志=wx。对齐中心水平)
第二个模块施胶器。添加垫片(5)
第二个模块sizer.Add(第二个模块cbox,0,flag=wx.EXPAND)
mod_mediate_sizer.Add(第二个mod_sizer,0,flag=wx.LEFT | wx.RIGHT,border=5)
mod_面板设置器(mod_中间施胶器)
mod_intermediate_sizer.Layout()
'''
<