import wx
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()
# 基本的应用程序类 wx.App 负责幕后所有的初始化
app = wx.App()
# 窗口(框架)
win = wx.Frame(None,title='Simple Editor(简易编辑器)',size=(410,335),)
bkg = wx.Panel(win)
loadButton = wx.Button(bkg,label='OPEN(打开)')
# 将函数绑定到所涉及的事件可能发生的组件上,事件发生时,函数会被调用
loadButton.Bind(wx.EVT_BUTTON,load)
saveButton = wx.Button(bkg,label='SAVE(保存)')
saveButton.Bind(wx.EVT_BUTTON,save)
# TextCtrl 文件控件
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(loadButton,proportion=0,flag=wx.LEFT,border=5)
hbox.Add(saveButton,proportion=0,flag=wx.LEFT,border=5)
# BoxSizer尺寸器
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)
# 显示GUI窗口
win.Show()
app.MainLoop()
网友评论