首页 > 代码库 > python学习笔记十四:wxPython Demo

python学习笔记十四:wxPython Demo

一、简介

wxPython是Python语言的一套优秀的GUI图形库,允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。

二、安装

参考官方网站:http://www.wxpython.org/download.php

三、DEMO

本demo是一个简单的记事本软件,可以打开文件,修改并保存。

import wxapp = wx.App()win = wx.Frame(    None,    title="simple editor",    size=(410, 335))bkg = wx.Panel(win)def openFile(evt):    dlg = wx.FileDialog(        win,        "Open",        "",        "",        "All files (*.*)|*.*",        wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)    filepath = ‘‘    if dlg.ShowModal() == wx.ID_OK:        filepath = dlg.GetPath()    else:        return    filename.SetValue(filepath)    fopen = open(filepath)    fcontent = fopen.read()    contents.SetValue(fcontent)    fopen.close()def saveFile(evt):    fcontent = contents.GetValue()    fopen = open(filename.GetValue(), w)    fopen.write(fcontent)    fopen.close()openBtn = wx.Button(bkg, label=open)openBtn.Bind(wx.EVT_BUTTON, openFile)saveBtn = wx.Button(bkg, label=save)saveBtn.Bind(wx.EVT_BUTTON, saveFile)filename = wx.TextCtrl(bkg, style=wx.TE_READONLY)contents = wx.TextCtrl(bkg, style=wx.TE_MULTILINE)hbox = wx.BoxSizer()hbox.Add(openBtn, proportion=0, flag=wx.LEFT | wx.ALL, border=5)hbox.Add(filename, proportion=1, flag=wx.EXPAND | wx.TOP | wx.BOTTOM, border=5)hbox.Add(saveBtn, proportion=0, flag=wx.LEFT | wx.ALL, border=5)bbox = wx.BoxSizer(wx.VERTICAL)bbox.Add(hbox, proportion=0, flag=wx.EXPAND | wx.ALL)bbox.Add(    contents,    proportion=1,    flag=wx.EXPAND | wx.LEFT | wx.BOTTOM | wx.RIGHT,    border=5)bkg.SetSizer(bbox)win.Show()app.MainLoop()

运行效果:

技术分享

python学习笔记十四:wxPython Demo