Python语言接触也有些时间,但平常主要是写写完成某些功能命令行的脚本。然后对于图形界面开发呢,考察了下,python的GUI toolkit主要有:内置的Tkinter库, pyQt, wxPython等。平时项目中wx用的比较多,那就探索下wxPython吧,正如名字一样,由开源的C++跨平台图形库wxWidgets,加上python语言绑定而成。结合python语言的简洁强大与wx的丰富的图形界面,我们可以快速的开发python GUI程序。

##一、Windows下安装

Windows下安装比较简单:

安装python(我这里是python2.7.4.msi)

安装对应版本的wxPython(我的是wxPython2.8-win32-unicode-2.8.12.1-py27)

安装wxPython的demo和doc(wxPython2.8-win32-docs-demos-2.8.12.1.exe)

装好后wxpython出现在python包目录中E:\Python27\Lib\site-packages\wx-2.8-msw-unicode,用python 引入包import wx来写GUI程序,

差不多了,python demo.py跑跑内带的demo看看,可以发现wxPython有丰富的ui 元素

C:\Documents and Settings\tanli>python

Python 2.7.6 (default, Nov 10 2013, 19:24:18) [MSC v.1500 32 bit (Intel)] on win

32

Type "help", "copyright", "credits" or "license" for more information.

>>> import wx

>>> print wx.VERSION

(2, 8, 12, 1, '')

##二、Linux下安装

Linux下要稍微复杂些:

(1)安装wxWigets

下载wxGTK-2.8.12.tar.gz解压后在其目录下建立bld文件夹,然后运行configure:

../configure --prefix=/home/tanli/local/wxWidget-2.8.12 \

--with-gtk \

--with-gnomeprint \

--with-opengl \

--enable-debug \

--enable-geometry \

--enable-graphics_ctx \

--enable-sound --with-sdl \

--enable-mediactrl \

--enable-display \

--disable-debugreport \

--enable-unicode \

--with-libjpeg=builtin \

--with-libpng=builtin \

--with-libtiff=builtin \

--with-zlib=builtin

(–enable-mediactrl ,可能有个链接错误,可以去掉)

(2)编译安装:

制作一个脚本,内容如下:

make $*

make -C contrib/src/gizmos $*

make -C contrib/src/stc $*

命名为 .make , 放到bld目录下

然后运行:

$./.make

$./.make install

(3)安装wxPython:

下载 wxpython: http://downloads.sourceforge.net/wxpython/wxPython-src-2.8.12.1.tar.bz2

解压,然后在它的wxPython目录里运行:

python setup.py build_ext --inplace --debug WX_CONFIG=/home/tanli/local/wxWidget-2.8.12/bin/wx-config

WX_CONFIG=/home/tanli/local/wxWidget-2.8.12/bin/wx-config 中的路径为configure时设置的路径

(4)设置环境变量:

export LD_LIBRARY_PATH=/home/tanli/local/wxWidget-2.8.12/lib

export PYTHONPATH=/home/tanli/local/wxPython-src-2.8.12.1/wxPython

我将wxPython的源码文件夹copy到了~/local下,所以第二项是这样

最后将以上两项添加道home目录下的.bashrc中,以后用起来方便点

##三、第一个wxPython程序

写个图形版本的hello world吧,这个程序基本可以看出wxPython程序框架和wxWidget是一致的,只不过代码比C++要简单的多:

import wx

class MyFrame(wx.Frame):

def __init__(self, parent, title):

wx.Frame.__init__(self, parent, title=title, size=(400,300))

self.CreateStatusBar() # A StatusBar in the bottom of the window

# Setting up the menu.

filemenu= wx.Menu()

# wx.ID_ABOUT and wx.ID_EXIT are standard ids provided by wxWidgets.

menuAbout = filemenu.Append(wx.ID_ABOUT, "&About"," Information about this program")

menuExit = filemenu.Append(wx.ID_EXIT,"E&xit"," Terminate the program")

# Creating the menubar.

menuBar = wx.MenuBar()

menuBar.Append(filemenu,"&File") # Adding the "filemenu" to the MenuBar

self.SetMenuBar(menuBar) # Adding the MenuBar to the Frame content.

# Set events.

self.Bind(wx.EVT_MENU, self.OnAbout, menuAbout)

self.Bind(wx.EVT_MENU, self.OnExit, menuExit)

def OnAbout(self,e):

# A message dialog box with an OK button. wx.OK is a standard ID in wxWidgets.

dlg = wx.MessageDialog( self, "Hello world! ", "wxPython Dialog", wx.OK)

dlg.ShowModal() # Show it

dlg.Destroy() # finally destroy it when finished.

def OnExit(self,e):

self.Close(True) # Close the frame.

app = wx.App(False)

frame = MyFrame(None, "wxPython hello world")

frame.Show(True)

app.MainLoop()

wxpython 安装_wxPython安装与环境配置相关推荐

  1. oracle pl sql安装配置,oracle的安装与plsql的环境配置

    1,首先得有oracle的安装包和plsql的安装包,安装包地址可见百度云 http://pan.baidu.com/s/1miTqhmg 2.解压下来进入0817账套,找到set.exe文件,双击安 ...

  2. Jenkins——Jenkins介绍+基于云平台的Jenkins安装和持续集成环境配置(插件+用户权限+凭据+Maven打包)

    Jenkins--Jenkins介绍+基于云平台的Jenkins安装和持续集成环境配置(插件+用户权限+凭据+Maven打包) 持续集成及Jenkins介绍 软件开发生命周期 什么是持续集成? 持续集 ...

  3. ant安装和ant的环境配置

    1.ant安装和ant的环境配置 2.'mode'.'explorer' 不是内部或外部命令,也不是可运行的程序或批处理文件.解决方法. 3.java.lang.OutOfMemoryError: r ...

  4. JAVA虚拟机的安装以及JAVA的环境配置

    冷崖 JAVA虚拟机的安装以及JAVA的环境配置 最近帮别人安装JAVA虚拟机,安装完毕之后一直存在问题,解决了许久,所以特来与大家一起分享下经验. 首先,如果电脑机器里面存在JAVA的话,而又不想要 ...

  5. Jenkins安装和持续集成环境配置

    Jenkins安装和持续集成环境配置 持续集成说明 Jenkins安装 Jenkins插件管理 下载中文汉化插件 Jenkins用户权限管理 安装Role-based Authorization St ...

  6. Anaconda3 下载安装及不同python环境配置(Linux/Windows)

    Anaconda3 下载安装及不同python环境配置(Linux/Windows) 一.Anaconda3安装 Windows Linux(以ubuntu18.04为例) 二.配置虚拟环境 一.An ...

  7. Mac 安装 node.js 及环境配置

    1.官网下载 访问nodejs官网,点击稳定版,并下载 https://nodejs.org/en/ 2.安装 双击刚下载的文件,按步骤默认安装就行 3. 验证 安装完成后打开终端 输入 npm -v ...

  8. DirectX9 SDK 下载、安装、VC++开发环境配置、跑通第一个例子

    一 可在 http://download.microsoft.com/download/F/1/7/F178BCE4-FA19-428F-BB60-F3DEE1130BFA/DXSDK_Feb10.e ...

  9. java环境安装 linux,Linux Java环境配置安装

    一.安装JDK 安装包名为:jdk-1_5_0_18-linux-i586.rpm.bin 安装步骤: 1. 以root身份登录Linux操作系统 2. 将jdk-1_5_0_18-linux-i58 ...

  10. c语言 r语言 java,R语言rJava包安装载入及JAVA环境配置

    rJava 包的安装与载入 一般文本分词的教程都会贴出: install.packages("rJava") library(rJava) 来引导我们装载rJava包,运行inst ...

最新文章

  1. 通俗易懂的大白话讲解Map/Reduce原理
  2. url主机域名可以省略_从输入url到页面完成加载发生了什么
  3. 如何查看redis占用内存大小
  4. LeetCode(496)——下一个更大元素 I(JavaScript)
  5. 在Linux上安装Chef工作站
  6. 数学篇--初中数学知识
  7. C++ 一个简单的log类的实现
  8. 十代主板改win7_微星b460主板装win7系统及bios设置教程(支持十代usb驱动)
  9. spring 动态代理如何决定使用jdk代理和cglib(网易面试题)
  10. Qsys中的EPCS使用技巧
  11. 一文简要了解词义消歧与实体消歧
  12. 双显卡只用独显好吗_win10怎么一直使用独立显卡_win10双显卡如何设置只使用独立显卡...
  13. Python之ARP协议探测MAC地址
  14. JavaScript HSL拾色器
  15. vim E486不存在::wq 错误笔记
  16. web前端编辑所见即所得
  17. django学习问题及解决方法
  18. 两个小妙招快速教会大家如何合并多个PDF到一个PDF!
  19. python开发出来的crm系统_基于Django实现的CRM系统
  20. 国内供应链市场达百万亿,顺丰DHL如何用数据如何撬动这块“大蛋糕?”

热门文章

  1. kafka删除队列_Kafka消息队列
  2. vue 组件 Vue.component 用法
  3. 微积分在小学教学中如何应用
  4. JMEditor开源在线公式编辑器
  5. 【习题答案】计网第三章_数据链路层
  6. 营销技术(Martech)的持续爆炸式增长,市场总监的工作变得更加艰难
  7. 机器学习模型的评价指标和方法
  8. 龙华教育局网站招标服务器,教育局服务器招标公告
  9. 100以内不能被3整除的数
  10. python3使用腾讯企业邮箱发送邮件