noob:在wxpython对话框中组织输入字段

时间:2012-05-16 18:04:13

标签: python wxpython

我是wxpython的新手,所以这可能是一个非常简单的问题,我不知道。

我希望弹出一个用户输入的对话框。校验。我想要多个用户输入字段。校验。我也想让它们出现在同一行,例如:

输入月份: x 输入日期: x 输入小时: x

等等......而不是让他们各自采取新的行。所以如果我有这样的代码(从一些教程中复制):

import wx

class TextFrame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, None, -1, 'Text Entry Example', size=(300, 100))
        panel = wx.Panel(self, -1) 
        basicLabel = wx.StaticText(panel, -1, "Basic Control:")
        basicText = wx.TextCtrl(panel, -1, "I've entered some text!", size=(175, -1))
        basicText.SetInsertionPoint(0)
        pwdLabel = wx.StaticText(panel, -1, "Password:")
        pwdText = wx.TextCtrl(panel, -1, "password", size=(175, -1),style=wx.TE_PASSWORD)
        sizer = wx.FlexGridSizer(cols=2, hgap=6, vgap=6)
        sizer.AddMany([basicLabel, basicText, pwdLabel, pwdText])
        panel.SetSizer(sizer)

app = wx.PySimpleApp()
frame = TextFrame()
frame.Show()
app.MainLoop()

我如何才能使“基本控制”和“密码”字段出现在同一行?

1 个答案:

答案 0 :(得分:2)

如果您希望所有小部件位于同一行,则将sizer的列数从2更改为4.或者使用水平方向的box sizer。