使用wxPython进行静态文本垂直对齐
我正在用wxPython设计一个表单。 请注意图片中的搜索面板:“search By:”标签、嵌套在其上的组合框和搜索控件-所有的文本都与顶部对齐。如何对齐它们在中间(垂直)? 这是搜索面板代码:使用wxPython进行静态文本垂直对齐,wxpython,vertical-alignment,Wxpython,Vertical Alignment,我正在用wxPython设计一个表单。 请注意图片中的搜索面板:“search By:”标签、嵌套在其上的组合框和搜索控件-所有的文本都与顶部对齐。如何对齐它们在中间(垂直)? 这是搜索面板代码: class TopNavigationPanel(wx.Panel): def __init__(self, parentPanel): """Constructor""" wx.Panel.__init__(self, parent=parentPanel,
class TopNavigationPanel(wx.Panel):
def __init__(self, parentPanel):
"""Constructor"""
wx.Panel.__init__(self, parent=parentPanel, id=-1)
self.SetBackgroundColour("red")
self.searchByLbl = wx.StaticText(self, label="Search By: ", style=wx.ALIGN_RIGHT, size=(80, -1))
cat = ["Author", "Title", "ISBN", "Publisher"]
categories = wx.ComboBox(self, value="Author", choices=cat, size=(100, -1))
self.search = wx.SearchCtrl(self, style=wx.TE_PROCESS_ENTER, size=(160, -1))
self.search.Bind(wx.EVT_TEXT_ENTER, parentPanel.onSearch)
navigationSizer = wx.BoxSizer(wx.HORIZONTAL)
navigationSizer.AddSpacer(50)
navigationSizer.Add(self.searchByLbl, 0, wx.EXPAND, 0)
navigationSizer.Add(categories, 0, wx.EXPAND, 0)
navigationSizer.Add(self.search, 0, wx.EXPAND, 0)
navigationSizer.AddSpacer(500)
self.SetSizer(navigationSizer)
self.Fit()
好的,我找到了方法。在这里为其他人发帖 我们可以在将每个控件从任意方向添加到sizer时填充它。这里我从顶部填充7:
navigationSizer.Add(self.searchByLbl, 0, wx.EXPAND | wx.TOP, 7)
您可以使用对齐\u中心\u垂直
在下面的代码段中,我将文本与水平框大小器中的按钮垂直对齐:
dbBox = wx.BoxSizer(wx.HORIZONTAL)
updateBtn = wx.Button(dbFrm, label = "Update")
dbBox.Add(updateBtn, 0, wx.LEFT | wx.RIGHT, 5)
self.dateLbl = wx.StaticText(dbFrm, label = "Never updated")
dbBox.Add(self.dateLbl, 1, wx.LEFT | wx.RIGHT | wx.ALIGN_CENTER_VERTICAL, 5)