1.下载,安装wxPython。注意应该选择与本机上python相同的版本。
地址:[http://www.wxpython.org/download.php#stable](http://www.wxpython.org/download.php#stable)
2.我使用的是eclipse+pydev环境,使用时应该重新设置下python解释器环境。
3.hello,world
#!/usr/bin/env python
import wx
app = wx.App(False) # 创建实例,False表明不重定位到标准输出/错误输出
frame = wx.Frame(None, wx.ID_ANY, "Hello World") # 创建窗口,第一个参数指示父窗口,第二个自动获得ID,第三个参数为窗口名称
frame.Show(True) # 显示窗口
app.MainLoop()

4.简单文本编辑:MyFrame继承wx.Frame,重写了init方法,添加了wx.TextCtrl控件
#!/usr/bin/env python
import wx
class MyFrame(wx.Frame):
""" We simply derive a new class of Frame. """
def __init__(self, parent, title):
wx.Frame.__init__(self, parent, title=title, size=(200,100))
self.control = wx.TextCtrl(self, style=wx.TE_MULTILINE)
self.Show(True)
app = wx.App(False)
frame = MyFrame(None, 'Small editor')
app.MainLoop()

5. 使用菜单栏
win.CreateStatusBar()
filemenu = wx.Menu()
filemenu.Append(wx.ID_ABORT,"about title","this is the about information")
filemenu.AppendSeparator()
filemenu.Append(wx.ID_EDIT,"lalala")
menubar = wx.MenuBar()
menubar.Append(filemenu,"File")
win.SetMenuBar(menubar)

6.使用尺寸器
#coding:utf-8
import wx
from wx._core import HSCROLL
app = wx.App()
win = wx.Frame(None,title = "Simple Editor")
bkg = wx.Panel(win) #加入面板
loadbtn = wx.Button(bkg,label="open")
savebtn = wx.Button(bkg,label="save")
filename = wx.TextCtrl(bkg)
contents = wx.TextCtrl(bkg,style=wx.TE_MULTILINE|wx.HSCROLL)
hbox = wx.BoxSizer()
hbox.Add(filename,proportion=1,flag=wx.EXPAND)
hbox.Add(loadbtn,proportion=0,flag=wx.LEFT,border=5)
hbox.Add(savebtn,proportion=0,flag=wx.LEFT,border=5)
vbox = wx.BoxSizer(wx.VERTICAL)
vbox.Add(hbox,proportion=0,flag=wx.EXPAND|wx.ALL,border=5)
vbox.Add(contents,proportion=1,flag=wx.EXPAND|wx.LEFT|wx.BOTTOM|wx.RIGHT,border=5)
bkg.SetSizer(vbox)
win.Show()
app.MainLoop()
7.事件处理
def load(event):
file = open(filename.GetValue())
contents.SetValue(file.read())
file.close()
def save(event):
file = open(filename.GetValue(),'w')
file.write(contents.GetValue())
file.close()
loadbtn = wx.Button(bkg,label="open")
loadbtn.Bind(wx.EVT_BUTTON, load)
savebtn = wx.Button(bkg,label="save")
savebtn.Bind(wx.EVT_BUTTON, save)[来自为知笔记(Wiz)](http://www.wiz.cn/i/c09d0bb5 "来自为知笔记(Wiz)")