初次使用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. Linux read语法及浅析

    read命令 -n(不换行) -p(提示语句) -n(字符个数) -t(等待时间) -s(不回显) 1.基本读取read命令接收标准输入(键盘)的输入,或其他文件描述符的输入(后面在说).得到输入后, ...

  2. 【HDOJ】1315 Basic

    这道题目巨坑啊,注意__int64,int wa了一个下午. #include <cstdio> #include <cstring> #include <cstdlib ...

  3. Eclipse设置合适的字体

    一直使用Eclipse开发,最近感觉Comic Sans MS不错,但我的eclipse的默认字体里没有. 如果系统里有这个字体的话,那可以很简单的将这个字体添加到Eclipse中: Windows ...

  4. HDU_2024——判断字符串是否是c语言合法标识符

    Problem Description 输入一个字符串,判断其是否是C的合法标识符.   Input 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是 ...

  5. Java多线程中变量的可见性

    之所以写这篇博客, 是因为在csdn上看到一个帖子问的就是这个问题. 废话不多说, 我们先看看他的代码(为了减少代码量, 我将创建线程并启动的部分修改为使用方法引用). 1 2 3 4 5 6 7 8 ...

  6. 使用MapReduce将HDFS数据导入到HBase(二)

    package com.bank.service; import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.conf. ...

  7. oracle修改服务器端编码

    因为装的是oracle 11g免费版,没有装oracle客户端,然后从网上找了免客户端使用pl/sql的教程,具体可以看链接,这里不再累述:但打开pl/sql的时候提示客户端和服务端编码不一致:网上一 ...

  8. cocoapods 的使用心得

    一般我们下载的demo里边含有cocoapods 我们需要 在终端上输入命令,让他能够成功运行 步骤如下: 打开终端  cd 项目目录  直接拖动到终端里边就可以, 然后 pod install 如果 ...

  9. Android在跳转市场进行评分问题总结

    原本以为应用评分是个很小的功能,但是一实现才发现真不是个小事.网上搜索资料没有找到答案,在很多开发群里面询问了很多人也没有解决问题,最后分析log,反编译看源码才终于有了些眉目,好吧,上代码: 1 t ...

  10. 基于bootstrap的datatable控件

    https://editor.datatables.net/release/DataTables/extras/Editor/examples/bootstrap.htmlhttps://github ...