为什么一个wx.dialog的父窗口加载一个wx.Panel子窗口时,子窗口不能填满父窗口?
来源:百度知道 编辑:UC知道 时间:2024/05/17 00:29:32
问题:
我有一个wx.Panel的子类,
class RemotePanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self,parent,-1)
是作为主程序的弹出窗口来用于设置的。因此要把它作为子窗口添加给一个wx.Dialog
dlg = wx.Dialog(None, -1, title='Remote Setting Dialog',size =(500,500))
remote = RemotePanel(dlg)
dlg.ShowModal()
dlg.Destroy()
RemotePanel 我要放置几个控件,采用了sizer布局。
运行后remotePanel不能自动填满dialog窗口。如果用鼠标拖动改变窗口大小之后,就能填满。
下面图片是运行后的截图
这个问题折磨我好几天了,一直找不到好的解决办法。希望有好心人给看看哪里有问题?
下面是我写的sizer:
def Dolayout(self):
# create the mainsizer
self.mainsizer = wx.BoxSizer(wx.VERTICAL)
sizer_1 = wx.BoxSizer(wx.HORIZONTAL)
# sizer_1 has two subsizer
sizer_1_lb = wx.StaticBoxSizer(wx.StaticBox(self, -1, 'ListBox'), orient=wx.VERTICAL)
sizer_1_bt = wx.StaticBoxSizer(wx.StaticBox(self, -1, 'Edit Botton'),orient = wx.VERTICAL)
# the middl
我有一个wx.Panel的子类,
class RemotePanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self,parent,-1)
是作为主程序的弹出窗口来用于设置的。因此要把它作为子窗口添加给一个wx.Dialog
dlg = wx.Dialog(None, -1, title='Remote Setting Dialog',size =(500,500))
remote = RemotePanel(dlg)
dlg.ShowModal()
dlg.Destroy()
RemotePanel 我要放置几个控件,采用了sizer布局。
运行后remotePanel不能自动填满dialog窗口。如果用鼠标拖动改变窗口大小之后,就能填满。
下面图片是运行后的截图
这个问题折磨我好几天了,一直找不到好的解决办法。希望有好心人给看看哪里有问题?
下面是我写的sizer:
def Dolayout(self):
# create the mainsizer
self.mainsizer = wx.BoxSizer(wx.VERTICAL)
sizer_1 = wx.BoxSizer(wx.HORIZONTAL)
# sizer_1 has two subsizer
sizer_1_lb = wx.StaticBoxSizer(wx.StaticBox(self, -1, 'ListBox'), orient=wx.VERTICAL)
sizer_1_bt = wx.StaticBoxSizer(wx.StaticBox(self, -1, 'Edit Botton'),orient = wx.VERTICAL)
# the middl
我是楼上的,又研究了一下,附着到默认的dialog动手再加个sizer后恢复正常。譬如我是这样加码:
.
.
.
remote = RemotePanel(dlg)
sizer = wx.BoxSizer()
sizer.Add(panel, 1, wx.EXPAND)
dlg.SetSizer(sizer)
dlg.ShowModal()
.
.
.
还不错可以看到。我这里试了几个脚本把panel更改摆到dialog里每一个能看的,原来是附在frame里全都很正常。你说dialog拉一下就正常?我这里默认的根本没得拉,大小固化。
关于MFC下的dialog
JQUERY UI的DIALOG问题
我在日文XP下用mfc来作的dialog,在别的语言系统下dialog的大小就不一样了。请问这是为什么?
如何在VC的单文档程序中加载一个编好的dialog类?
关于VC中将一个Dialog based窗体添加到single document的问题
用mfc怎样创建一个可放大缩小(用鼠标拉)的DIALOG?
为什么在定义dialog的构造函数时,要写上super()?
帮我想一个完美国际的WX名字
java中, 两个线程, 当一个线程弹出了一个Dialog, 那么另一个线程就不工作了,为什么?
为什么我对女人的SW WX NK感兴趣阿