⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 realworld.py

📁 wxPython的基本示例程序
💻 PY
字号:
import wxclass TestFrame(wx.Frame):    def __init__(self):        wx.Frame.__init__(self, None, -1, "Real World Test")        panel = wx.Panel(self)        # First create the controls        topLbl = wx.StaticText(panel, -1, "Account Information")        topLbl.SetFont(wx.Font(18, wx.SWISS, wx.NORMAL, wx.BOLD))        nameLbl = wx.StaticText(panel, -1, "Name:")        name = wx.TextCtrl(panel, -1, "");        addrLbl = wx.StaticText(panel, -1, "Address:")        addr1 = wx.TextCtrl(panel, -1, "");        addr2 = wx.TextCtrl(panel, -1, "");        cstLbl = wx.StaticText(panel, -1, "City, State, Zip:")        city  = wx.TextCtrl(panel, -1, "", size=(150,-1));        state = wx.TextCtrl(panel, -1, "", size=(50,-1));        zip   = wx.TextCtrl(panel, -1, "", size=(70,-1));        phoneLbl = wx.StaticText(panel, -1, "Phone:")        phone = wx.TextCtrl(panel, -1, "");        emailLbl = wx.StaticText(panel, -1, "Email:")        email = wx.TextCtrl(panel, -1, "");        saveBtn = wx.Button(panel, -1, "Save")        cancelBtn = wx.Button(panel, -1, "Cancel")        # Now do the layout.        # mainSizer is the top-level one that manages everything        mainSizer = wx.BoxSizer(wx.VERTICAL)        mainSizer.Add(topLbl, 0, wx.ALL, 5)        mainSizer.Add(wx.StaticLine(panel), 0,                wx.EXPAND|wx.TOP|wx.BOTTOM, 5)        # addrSizer is a grid that holds all of the address info        addrSizer = wx.FlexGridSizer(cols=2, hgap=5, vgap=5)        addrSizer.AddGrowableCol(1)        addrSizer.Add(nameLbl, 0,                wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL)        addrSizer.Add(name, 0, wx.EXPAND)        addrSizer.Add(addrLbl, 0,                wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL)        addrSizer.Add(addr1, 0, wx.EXPAND)        addrSizer.Add((10,10)) # some empty space        addrSizer.Add(addr2, 0, wx.EXPAND)        addrSizer.Add(cstLbl, 0,                wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL)        # the city, state, zip fields are in a sub-sizer        cstSizer = wx.BoxSizer(wx.HORIZONTAL)        cstSizer.Add(city, 1)        cstSizer.Add(state, 0, wx.LEFT|wx.RIGHT, 5)        cstSizer.Add(zip)        addrSizer.Add(cstSizer, 0, wx.EXPAND)        addrSizer.Add(phoneLbl, 0,                wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL)        addrSizer.Add(phone, 0, wx.EXPAND)        addrSizer.Add(emailLbl, 0,                wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL)        addrSizer.Add(email, 0, wx.EXPAND)        # now add the addrSizer to the mainSizer        mainSizer.Add(addrSizer, 0, wx.EXPAND|wx.ALL, 10)        # The buttons sizer will put them in a row with resizeable        # gaps between and on either side of the buttons        btnSizer = wx.BoxSizer(wx.HORIZONTAL)        btnSizer.Add((20,20), 1)        btnSizer.Add(saveBtn)        btnSizer.Add((20,20), 1)        btnSizer.Add(cancelBtn)        btnSizer.Add((20,20), 1)        mainSizer.Add(btnSizer, 0, wx.EXPAND|wx.BOTTOM, 10)        panel.SetSizer(mainSizer)        # Fit the frame to the needs of the sizer.  The frame will        # automatically resize the panel as needed.  Also prevent the        # frame from getting smaller than this size.        mainSizer.Fit(self)        mainSizer.SetSizeHints(self)app = wx.PySimpleApp()TestFrame().Show()app.MainLoop()

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -