我有两个面板,我都是添加到一个单一的大小在顶层,但这些面板内的元素没有相互对齐。你知道吗
下面是一个简单的例子来说明我正在努力实现的目标。你知道吗
import wx
class MyPanel(wx.Panel):
def __init__(self, parent):
super(MyPanel, self).__init__(parent=parent)
mygridsizer = wx.GridBagSizer()
sizer = wx.BoxSizer(orient=wx.HORIZONTAL)
sizer.Add(wx.StaticText(self,label="Hello world"))
sizer.Add(wx.Button(self, label="hello"))
mygridsizer.Add(sizer, pos=(0,0))
mygridsizer.Add(wx.ComboBox(self), pos=(0,1))
self.SetSizer(mygridsizer)
class MyPanel2(wx.Panel):
def __init__(self, parent):
super(MyPanel2, self).__init__(parent=parent)
sizer = wx.BoxSizer(orient=wx.HORIZONTAL)
sizer.Add(wx.Button(self, label="non-aligned button"))
self.SetSizer(sizer)
class MainFrame(wx.Frame):
def __init__(self, parent):
super(MainFrame, self).__init__(None)
sizer = wx.GridSizer(3, 1)
panel1 = MyPanel(parent=self)
panel2 = MyPanel2(parent=self)
sizer.Add(panel1)
sizer.Add(panel2)
self.SetSizer(sizer)
if __name__ == '__main__':
app = wx.App()
frame = MainFrame(None)
frame.Show()
app.MainLoop()
在上面的示例中,如何对齐两个面板的按钮?你知道吗
问题是大小调整器正在对齐面板,如果要对齐按钮,则应使它们成为同一大小调整器的一部分(而不是具有自己大小调整器的两个面板的一部分)。您也可以这样做以快速破解(实际上是添加与文本大小相同的间隔符):
相关问题 更多 >
编程相关推荐