使用 python 开发 windows 桌面程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使用python 开发windows 应用程序
本人以前一直用的是C++,MFC,毕业到了公司以后,公司用python做流程,我
顺便最近研究了一下用python开发windows 应用程序的整个流程,大体如下:
一、开发前期准备
1.boa-constructor-0.6.1.bin.setup.exe #一个wxWidges 的集成开发环境,简单如Delphi,可以直接拖拽控件,并且和其他集成环境不一样,
#它不与集成开发环境的MainLoop冲突,用pythonwin,pyScripter都会冲突,典型
报错就是运行第二次
#程序的时候,直接导致
集成开发环境的强制退出,因为MainLoop冲突了
2.wxPython2.8-win32-unicode-2.8.10.1-py26.exe #wxPython库,提供了用C++写的
windows 组件库wx
3.py2exe-0.6.9.win32-py2.6.exe #打包发布工具,将python写的windows 程序或控
制台程序直接打包成exe 可执行文件,供用户使用
上述三个软件都是基于python2.6的,软件版本一定要配套,因为他们默认的安装路径和python版本有关系,否则会找不到相关库的存在。
二、开发
软件安装完以后,打开BOA,哇塞,拖控件真简单,而且属性啥的和Dephi差
不多,你只要改改属性,代码会自动生成,它生成的控件很漂亮,记得以前用C++6.0开发软件的时候,那个控件真丑,都需要我重新用控件库去绑定优化,
现在不用了~BOA生成的控件,视觉效果相当好~开发软件速度相当快,再也
不用为了软件界面而写太多代码,也不用为了生成一个小程序而生成了很多的
文件,python开发的程序,没有多余的文件,而且文件很小。
三、发布
很多人都想在自己的软件程序写好以后,发布给其他人使用,一方面不希望自
己的代码泄露,一方面以此显出一点成就感,呵呵,可以使用py2exe将你的windows 程序打包发布了!当然,首先你得写个如下的setup.py文件:
代码
1 from distutils.core import setup
2 import py2exe
3 includes = ["encodings", "encodings.*"]
4 options = {"py2exe":
5 { "compressed": 1,
6 "optimize": 2,
7 "includes": includes,
8 "bundle_files": 1
9 }
10 }
11 setup(
12 version = "0.1.0",
13 description = "windows program",
14 name = "winsetup",
15 options = options,
16 zipfile=None,
17 windows=[{"script": "myscript.py", "icon_resources": [(1,
"PyCrust.ico")] }],
18 )
你可以在命令行下运行:python setup.py py2exe,那么你就会发现你的应用程序出
现在dist文件夹里了,恭喜你,完成了windows 应用程序的开发!
python python python python 学习学习学习学习————————初次接触初次接触初次接触初次接触
(python,wxpython,Boa,py2exe) (python,wxpython,Boa,py2exe) (python,wxpython,Boa,py2exe) (python,wxpython,Boa,py2exe) 收藏收藏收藏收藏
前言前言前言前言长期使用java 做web开发,有时候需要做一些小工具的话,优先考虑的一般是
写ant或bat等脚本,因为开发较快,并且很容易集成到IDE中。不过有时候一
些桌面程序级别的工具也是需要的,比如说写一些文档生成相关的工具等。
这个时候采用java 是不太合算的,因为开发效率不高(虽然有netbeans,eclipse
上也有swt designer),性能也有一点影响,而且还必须要有JRE的支持。采用.net
框架倒是开发效率挺高,而且性能也不错,但是IDE价格较高,程序无法移植
到其他平台,并且也需要有CLR 的支持。
没招,就只有找找看其他的编程语言了。
在网上搜索了一下,发现Python可能是一个很好的替代品:面向对象的脚本语
言,稍微修改一下就可以实现跨平台,有wxPython这种GUI插件的支持,使用
py2exe 等打包工具打包之后的文件大小也远小于同样功能的java 程序,经过某些
类似于psyco工具的处理之后,性能也还不错。缺点也有,就是没有一个可以
媲美visual 的IDE,不过也有Boa Constructor和eclipse 插件pydev这样
的工具,应该可以忍受了。
而且python作为google 的官方编程语言之一,现在在编程语言排行榜上排名前
10,那么就肯定是优点胜过缺点的。那么就先简单地试用一下总是可以的吧。
断断续续的用了几天时间来了解相关的工具,语法,终于写出了一个最简单的
GUI程序,并且打成了一个程序包,拷贝到到其他PC 上运行成功。虽然中间遇
到一些问题,但也学习了很多,所以先写blog记下来。能帮到其他人就更好了。
工具准备工具准备工具准备工具准备
python现在的最新版是3.1.1,而且3.0之后的版本的语法与之前的版本相比已经
有了一定的变更,但是相关的wxpython等还没有支持到这么高的版本,为了能
够使用wxpython来编写GUI程序,只能放弃新版本了。所以选择了2.x系列中的
最新版:2.6.2,同样wxPython 也选择了for2.6的版本
wxPython2.8-win32-unicode-2.8.10.1-py26。然后下载最新的Boa Constructor:
boa-constructor-0.6.1.bin.setup.exe。(下载地址参见参考资料)
按顺序依次安装:python2.6.2 -> wxPython2.8 -> Boa Constructor.
※不过之后因为要使用py2exe 打包的原因,把版本下降成了2.5系列。