使用Python开发windows GUI程序入门实例


Posted in Python onOctober 23, 2014

今天终于可以用wxPython开发GUI程序了,非常高兴。把其中的一些注意点写下来以供参考。在windows XP平台下,首先需要做以下环境的配置:

1. 首先是安装python ,安装完之后将python/bin所在目录添加到path中。
2. 安装wxPython, 此时要注意wxPython的版本要与前面python的版本一致。
3. 安装py2exe, 这是windows平台下一个非常好的python程序发布工具,可以将python程序编译成exe而脱离python环境执行。做完上面的安装后,我们就可以来测试一下了

wxPython demo 代码:

#wxDemo.py
import wx
class App(wx.App): 

   def OnInit(self): 

      frame = wx.Frame(parent=None, title='Bare') 

      frame.Show() 

      return True
app = App() 

app.MainLoop()

编写py2exe用的编译代码:

#setup.py 

from distutils.core import setup 

import py2exe
setup(windows=["wxDemo.py"])

注意,上面代码中 setup(windows=["wxDemo.py"])要正确引用你的Python程序,[]之中为你要编译的python程序文件,由于是带窗口的,所以用了windows属性.

下面来编译:

在命令行执行python setup.py py2exe, 当编译完成后,会有一个dist文件夹,里面有一个wxDemo.exe,这就是编译后的exe,在发布时,需要将这个文件夹下面的library.zip,dll和wxDemo.exe放到同一个目录下,否则程序不能执行。现在,双击wxDemo.exe,你就会看到一个窗口了:)

Python 相关文章推荐
Python2.5/2.6实用教程 入门基础篇
Nov 29 Python
python函数参数*args**kwargs用法实例
Dec 04 Python
python使用scrapy解析js示例
Jan 23 Python
python实现马耳可夫链算法实例分析
May 20 Python
Python中的字典与成员运算符初步探究
Oct 13 Python
Python标准库之itertools库的使用方法
Sep 07 Python
Python中django学习心得
Dec 06 Python
Python饼状图的绘制实例
Jan 15 Python
Python Image模块基本图像处理操作小结
Apr 13 Python
pycharm编写spark程序,导入pyspark包的3中实现方法
Aug 02 Python
讲解Python3中NumPy数组寻找特定元素下标的两种方法
Aug 04 Python
python3.7.2 tkinter entry框限定输入数字的操作
May 22 Python
手动实现把python项目发布为exe可执行程序过程分享
Oct 23 #Python
python文件操作整理汇总
Oct 21 #Python
Python中input和raw_input的一点区别
Oct 21 #Python
Python中if __name__ == "__main__"详细解释
Oct 21 #Python
Python创建文件和追加文件内容实例
Oct 21 #Python
python3生成随机数实例
Oct 20 #Python
Python入门篇之面向对象
Oct 20 #Python
You might like
php递归列出所有文件和目录的代码
2008/09/10 PHP
完美实现GIF动画缩略图的php代码
2011/01/02 PHP
PHP使用phpunit进行单元测试示例
2019/09/23 PHP
PHP替换Word中变量并导出PDF图片的实现方法
2020/11/26 PHP
Add a Table to a Word Document
2007/06/15 Javascript
javascript web页面刷新的方法收集
2009/07/02 Javascript
用js来解决ajax读取页面乱码
2010/11/28 Javascript
JavaScript将Table导出到Excel实现思路及代码
2013/03/13 Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
2014/05/11 Javascript
Jquery之Bind方法参数传递与接收的三种方法
2014/06/24 Javascript
js在IE与firefox的差异集锦
2014/11/11 Javascript
Lab.js初次使用笔记
2015/02/28 Javascript
jquery利用命名空间移除绑定事件的方法
2015/03/11 Javascript
HTML Table 空白单元格补全的简单实现
2016/10/13 Javascript
Vue组件实例间的直接访问实现代码
2017/08/20 Javascript
input type=file 选择图片并且实现预览效果的实例
2017/10/26 Javascript
webpack 处理CSS资源的实现
2019/09/27 Javascript
详解JavaScript 作用域
2020/07/14 Javascript
[01:05:00]2018国际邀请赛 表演赛 Pain vs OpenAI
2018/08/24 DOTA
Python基础学习之基本数据结构详解【数字、字符串、列表、元组、集合、字典】
2019/06/18 Python
Python generator生成器和yield表达式详解
2019/08/08 Python
pytorch 实现在预训练模型的 input上增减通道
2020/01/06 Python
CSS3让登陆面板3D旋转起来
2016/05/03 HTML / CSS
HTML5 Video标签的属性、方法和事件汇总介绍
2015/04/24 HTML / CSS
Nike香港官网:Nike HK
2019/03/23 全球购物
自荐信模版
2013/10/24 职场文书
小学标准化建设汇报材料
2014/08/16 职场文书
计生办班子群众路线教育实践活动个人对照检查材料思想汇报
2014/10/04 职场文书
2014年护士工作总结范文
2014/11/11 职场文书
数学教师个人工作总结
2015/02/06 职场文书
上市公司董事长岗位职责
2015/04/16 职场文书
Python网络编程之ZeroMQ知识总结
2021/04/25 Python
Python使用random模块实现掷骰子游戏的示例代码
2021/04/29 Python
SONY AN-LP1 短波有源天线放大器图
2022/04/05 无线电
Python 文字识别
2022/05/11 Python
微信小程序实现轮播图指示器
2022/06/25 Javascript