PyQt4学习笔记1:PyQt4第一个程序
创建一个 PyQt4 一般可以通过很少的步骤完成。通常的方法是用Qt 提供的QtDesigner工具创建界面。使用QtDesigner,可以方便地创建复杂的GUI界面。然后,可以在窗口上创建部件, 添加名字等。创建一个PyQt4一般需要:
1.使用QtDesigner创建GUI界面
2.在属性编辑器中修改部件的名字
3.使用pyuic4工具生成一个python类
4.通过GUI对应类来运行程序
1、打开QtDesigner,会看到新建窗口界面,这里可以选择类型。

这里我们先选择widget类型,然后在窗口中添加两个PushButton按纽和一个TextEdit:

通过鼠标右键可以修改pushButton显示的内容。
当窗口建好之后,我们可以QtDesigner来编辑一些Qt预定义的信号/槽。这里我们使用的是"close()"槽函数来关闭程序。首先切换到信号/槽边界模式:

用鼠标移到pushButton区域,然后拖动,可以显示配置连接:

信号选择clicked(),槽选择close()。
"关闭"按钮被连接到窗口的"close()"槽函数,可以被用来关闭窗口。修改"打开"按钮的对象名字为"button_open";修改TextEdit部件的对象名字为"editor_window";修改窗口的名字为"notepad" (开始为"MainWindow")。选择要该名字的对象,然后出现的属性编辑器中可以修改名字。

将窗口保存为test.ui文件。切换到test.ui所在的目录,然后输入以下命令:
pyuic4 test.ui > test_ui.py
下得到一个"Ui_notepad"类。我们还需要自己添加一些代码,创建test.py:
import sys
from PyQt4 import QtCore, QtGui
from test_ui import Ui_Form
class MyForm(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_Form()
self.ui.setupUi(self)
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = MyForm()
myapp.show()
sys.exit(app.exec_())
运行test.py:
python test.py
现在应该出现响应的窗口,当你点击关闭按钮的时候退出程序。

PyQt4学习笔记1:PyQt4第一个程序的更多相关文章
- Contiki学习笔记 第一个程序:Hello World
想来想去,还是得先写一个程序,找下感觉,增强一下自信心,那就国际惯例Hello World吧.先到这个网址下一个Instant Contiki 2.7.之所以没用3.0的,是因为有些问题,我源码是下的 ...
- Spring实战第五章学习笔记————构建Spring Web应用程序
Spring实战第五章学习笔记----构建Spring Web应用程序 Spring MVC基于模型-视图-控制器(Model-View-Controller)模式实现,它能够构建像Spring框架那 ...
- ASP.NET MVC Web API 学习笔记---第一个Web API程序
http://www.cnblogs.com/qingyuan/archive/2012/10/12/2720824.html GetListAll /api/Contact GetListBySex ...
- C#.NET学习笔记2---C#.第一个C#程序
C#.NET学习笔记2---C#.第一个C#程序 技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com 6.第一个C#程序: ...
- 20180821 Python学习笔记:如何获取当前程序路径
20180821 Python学习笔记:如何获取当前程序路径 启动的脚本的路径为:D:\WORK\gitbase\ShenzhenHouseInfoCrawler\main.py 当前脚本的路径为:D ...
- Django:学习笔记(2)——创建第一个应用
Django:学习笔记(2)——创建第一个应用 创建应用 在 Django 中,每一个应用都是一个 Python 包,并且遵循着相同的约定.Django 自带一个工具,可以帮你生成应用的基础目录结构, ...
- Spark学习笔记1——第一个Spark程序:单词数统计
Spark学习笔记1--第一个Spark程序:单词数统计 笔记摘抄自 [美] Holden Karau 等著的<Spark快速大数据分析> 添加依赖 通过 Maven 添加 Spark-c ...
- 【opencv学习笔记五】一个简单程序:图像读取与显示
今天我们来学习一个最简单的程序,即从文件读取图像并且创建窗口显示该图像. 目录 [imread]图像读取 [namedWindow]创建window窗口 [imshow]图像显示 [imwrite]图 ...
- 软件测试第六周学习笔记之“Win8 APP应用程序的白盒测试”
这周的学习笔记我想写点自己关于实验中碰到的问题和感想. 因为这次做的是白盒测试,所以我决定去测试一下上回测试的app的功能函数. 这次我用的是单元测试项目来做的白盒测试: 创建单元测试的步骤: 1.点 ...
- 【疯狂Java学习笔记】【第一章:Java语言概述】
[学习笔记]1.Java与C#的异同:Java与C#的相同之处有很多,它们均摒弃了C++面向对象的多继承.宏定义.全局变量.全局函数.指针等等难以使用的机制,添加进了成熟的机制,如垃圾回收.接口等等. ...
随机推荐
- EasyUI设置复选框单选操作
Html 代码: <td align="left" colspan="2"> <input type=& ...
- Service Discovery with Apache Curator
Curator的介绍 Curator就是Zookeeper的一个客户端工具(不知道Zookeeper的同学可以到http://www.ibm.com/developerworks/cn/opensou ...
- hdu 4055 动态规划
#include<map> #include<set> #include<cmath> #include<queue> #include<cstd ...
- hdu 3311 斯坦纳树
思路:虚拟一个0号节点,将每个点建一条到0号节点的边,权值为挖井需要的价值.并要保证0号节点同另外n个寺庙一样被选择即可. 然后就是求斯坦纳树了. #include<map> #inclu ...
- Android achartengine统计图
最近在安卓2.2上写个实时的监控程序,要用到统计图.从网上搜了下 Java4Less (http://java4less.com/charts/chart.php?info=android) ...
- 初识 Asp.Net内置对象之Cookie对象
Cookie对象 Cookie对象用于保存客户端浏览器请求的服务器页面,也可用于存放非敏感性的用户信息,信息保存的时间可以根据用户的需要经行设置.并非所有的浏览器都支持Cookie,并非数据信息都是以 ...
- Atmega8型号细分区别
TMEGA8L- 8PU.ATMEGA8L-8PI.ATMEGA8L-8PC.ATMEGA8-16PU.ATMEGA8-16PI.ATMEGA8-16PC. ATMEGA8L-8AU.ATMEGA8L ...
- Sharepoint 2013 系列篇(安装部署)--上篇
前言 sharepoint的部署是按照物理拓扑图的架构来部署,按照物理拓扑图架构分为一层拓扑图架构,二层拓扑图架构,三层拓扑图架构,多层拓扑图架构. 按照分层的拓扑图部署是按照需求来划分的,一层拓扑图 ...
- 考上好大学,然后进入IT行业是穷人孩子晋级中产的唯一出路?
今天看到一篇不错的文章,内容如下: 这个问题来自于我在知乎上参与的一个热贴讨论,作为一个10年的老码农,创业公司呆过,二.三流的互联网公司混过,BAT也遛了一趟,如今再次回归创业,经历算得上狗血了,看 ...
- MySQL之建设工程监管信息系统
--创建SelfStudy数据库 CREATE DATABASE ConstructionDB ON PRIMARY --创建主数据库文件 ( NAME=' ConstructionDB', --数据 ...