初次使用python写图形界面的工具时,用了Tkinter、wxpython,都是需要手写界面布局的,看api看的头疼觉得这样写太费劲了,于是搜了下看看别人都是怎样写python图形界面的。

在论坛上看到了大家讨论的很多种选择有GTK、pyqt等,我特别向往向C#那样可以画界面,觉得很爽,最后决定用pyqt。

一、PyQt4的下载与安装

  1.下载。

到官网 https://riverbankcomputing.com/software/pyqt/intro 下载PyQt4及SIP

PyQt5只支持python3.0,而3.0版本有很多包还不支持,所以决定下载PyQt4。PyQt4下载的时候选择exe比较简单,记得下载的时候选好windows32、64

SIP是官网描述是安装PyQt4之前需要安装的,下载压缩包

2.安装。

SIP

    a.将SIP解压到Python27\Lib\site-packages下面

    b.打开VS的命令行提示符,定位到sip目录,输入命令:python configure.py 并回车进行配置安装

    c.执行nmake命令

    d.执行nmake install命令

     至此SIP就安装完成了,至于为什么要打开vs的命令行提示符而不用cmd.exe,是因为nmake.exe在vs命令行窗口中可以直接找到,如果没有配置一些环境变量的话,

     直接用cmd会显示“不是内部命令”,所以为了避免配置那些繁琐的环境变量,就酱

    PyQt4

     直接执行exe一路next就可以了

有一点需要注意,如果安装的python是32bit windows版本,而PyQt是64bit,那就不能匹配成功,需要两个软件windows版本位数相同哦

二、PyQt4设计界面并转化为.py

  1.设计界面

    打开PyQt4文件夹中designer.exe,设计好界面后保存为test.ui

2.转化为python代码

     a.打开cmd.exe,并定位到包含pyuic.py文件的目录

    b.执行命令  python pyuic.py test.ui -o test.py,生成的test.py会默认在pyuic.py目录中

命令也可写成:python pyuic.py -o test.py test.py,只有-o 后面跟着的是.py就可以了

或者使用 pyuic4 test.ui -o test.py (需定位到pyuic4.bat目录)

3.修改生成的代码

     默认生成的代码是运行不了的,因为类中没有初始化函数,类也没有继承,我试验了一下,类继承自QtGui.QWidget可以正常运行,所以就用这个了。具体需要在生成的代码中添加的代码如下:

class Ui_form(QtGui.QWidget):
def __init__(self):
super(Ui_form,self).__init__()
self.setupUi(self) def setupUi(self,form):
'''以下省略‘’‘’

PyQt4环境搭建与使用的更多相关文章

  1. PyCharm + PyQt4 环境搭建

    一.准备工作 下载pycharm 和 pyqt4 (百度下就有) pyqt4安装好后,在C:\Python27\Lib\site-packages\PyQt4 路径下会有designer.exe ,这 ...

  2. pyqt5 -——介绍及和pycharm的环境搭建

    pyqt5简介: yQt5的类存在与如下模块当中: ● QtCore ● QtGui ● QtWidgets ● QtMultimedia ● QtBluetooth ● QtNetwork ● Qt ...

  3. [ PyQt入门教程 ] PyQt5环境搭建和配置

    PyQt入门系列教程主要目的是希望通过该系列课程学习,可以使用PyQt5工具快速实现简单的界面开发,包括界面设计.布局管理以及业务逻辑实现(信号与槽).简单说就是可以使用PyQt5工具快速画一个控件摆 ...

  4. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  5. Azure Service Fabric 开发环境搭建

    微服务体系结构是一种将服务器应用程序构建为一组小型服务的方法,每个服务都按自己的进程运行,并通过 HTTP 和 WebSocket 等协议相互通信.每个微服务都在特定的界定上下文(每服务)中实现特定的 ...

  6. rnandroid环境搭建

    react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...

  7. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

  8. springMVC初探--环境搭建和第一个HelloWorld简单项目

    注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...

  9. 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~

    一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...

随机推荐

  1. 一个简单的以User权限启动外部应用程序

    BOOL ExecuteAsUser(LPCWSTR lpszUserName, LPCWSTR lpszPassword, LPCWSTR lpszApplication, LPCWSTR lpsz ...

  2. 【转】Thunderbird on Ubuntu 12.04 – 调整邮件列表行间距

    原文网址:http://www.xuebuyuan.com/414703.html markz@markz-hp6200:~$ cd .thunderbird/ markz@markz-hp6200: ...

  3. sdl2.0示例

    // gcc -o testDrone2_video testDrone2_video.c -lavcodec -lavformat -lswscale -lSDL2// g++ -o testDro ...

  4. HDU_1009——老鼠的交易,性价比排序,最大化收益

    Problem Description FatMouse prepared M pounds of cat food, ready to trade with the cats guarding th ...

  5. openwrt上opkg更新报错"opkg_download: Failed to download ............."

    開始搞op的时候,看到op居然能够直接安装一些插件.激动坏了,由于这东西对嵌入式的小系统来说简直不敢想,可是op就支持了,就是这么任性. 好不easy编译了固件.依照网上的教程.telnet进去.首先 ...

  6. Android经常使用的五种弹出对话框

    一个Android开发中经常使用对话框的小样例,共同拥有五种对话框:普通弹出对话框,单选对话框,多选对话框,输入对话框及进度条样式对话框: <LinearLayout xmlns:android ...

  7. C#基础静态类的设计

  8. ado.net 数据库连接的两方式种

    DataAdapter: string connectionString = "data source=127.0.0.1;Database=dong;user id=sa;password ...

  9. python 下的数据结构与算法---5:递归(Recursion)

    定义:递归就是不断分割整体成部分直到可以轻易解决分割出来的部分. 递归表达式三定律: 1:递归表达式必须有个最小单元     (最小单元既是停止递归调用以及能够直接运算的) 2:递归表达式在运算过程中 ...

  10. Html.Action和Html.RederAction来创建子视图

    1. 父视图和子视图 父视图是包含了调用返回子视图的动作方法的视图. 父视图包含大部分用于呈现页面的HTML.子视图仅包含用于展示视图某部分的必须的标记. 例如,一个子视图创建一个列表,视图可能仅仅包 ...