没有合适的资源?快使用搜索试试~ 我知道了~
首页PyQt4 精彩实例分析26个例子---文字版.pdf
资源详情
资源评论
资源推荐

实例 1 Hello Kitty! ................................................................................................................ 2
实例 2 标准对话框的使用 .................................................................................................. 5
实例 3 各类位置信息......................................................................................................... 10
实例 4 使用标准输入框 .................................................................................................... 15
实例 5 各种消息框的使用 ................................................................................................ 21
实例 6 实现 QQ 抽屉效果................................................................................................. 29
实例 7 表格的使用 ............................................................................................................. 34
实例 8 使用进度条 ............................................................................................................. 36
实例 9 利用 Qt Designer 设计一个对话框 ...................................................................... 40
实例 10 在程序中使用 Ui ................................................................................................. 47
实例 11 动态加载 Ui .......................................................................................................... 52
实例 12 基本布局管理....................................................................................................... 53
实例 13 多文档 ................................................................................................................... 60
实例 14 分割窗口 ............................................................................................................... 65
实例 15 停靠窗口 ............................................................................................................... 69
实例 16 堆栈窗口 ............................................................................................................... 74
实例 17 综合布局实例....................................................................................................... 76
实例 18 可扩展对话框....................................................................................................... 86
实例 19 利用 QPalette 改变控件颜色 .............................................................................. 90
实例 20 窗体的淡入淡出效果 .......................................................................................... 97
实例 21 不规则窗体 .........................................................................................................107
实例 22 电子钟 ................................................................................................................. 110
实例 23 程序启动画面..................................................................................................... 114
实例 24 基本 QMainWindow 主窗口程序 .................................................................... 117
实例 25 打印文本 .............................................................................................................125
实例 26 打印图像 .............................................................................................................128
http://showmecode.cn/links/book

实例 1 Hello Kitty!
分类: -- PyQt4 2010-12-02 17:01 2723 人阅读 评论(8) 收藏 举报
本实例实现一个"Hello Kitty!"例子,简单介绍 Qt 编程的基本流程,以及 Qt 程序的编绎运行
方式,实例效果图如图所示。
这是一个简单的例子,整个对话框只有一个按钮,单击该按钮,对话框关闭,退出程序。
实现代码如下:
[python] view plaincopyprint?
1. from PyQt4.QtGui import *
2. from PyQt4.QtCore import *
3. import sys
4.
5. app=QApplication(sys.argv)
6. b=QPushButton("Hello Kitty!")
7. b.show()
8. app.connect(b,SIGNAL("clicked()"),app,SLOT("quit()"))
9. app.exec_()
第 1 行导入 PyQt4.QtGui 的所有类及模块,包括 QApplication,所有 Qt 图形化应用程序都
必须包含此文件,它包含了 Qt 图形化应用程序的各种资源,基本设置,控制流以及事件处
理等。
第 5 行新创建了一个 QApplication 对象,每个 Qt 应用程序都必须有且只有一个 QApplication
对象,采用 sys.argv 作为参数,便于程序处理命令行参数。
http://showmecode.cn/links/book

第 6 行创建了一个 QPushButton 对象,并设置它的显示文本为“Hello Kitty!”,由于此处并
没有指定按钮的父窗体,因此以自己作为主窗口。
第 7 行调用 show()方法,显示此按钮。控件被创建时,默认是不显示的,必须调用 show()
函数来显示它。
第 8 行的 connect 方法是 Qt 最重要的特征,即信号与槽的机制。当按钮被按下则触发 clicked
信号,与之相连的 QApplication 对象的槽 quit()响应按钮单击信号,执行退出应用程序的操
作。关于信号与槽机制在本实例最后将进行详细的分析。
最后调用 QApplication 的 exec_()方法,程序进入消息循环,等待可能输入进行响应。Qt
完成事件处理及显示的工作,并在应用程序退出时返回 exec_()的值。
最后执行程序即可出现上图所示的对话框,一个简单的 Hello Kitty!例子完成。
信号与槽机制作为 Qt 最重要的特性,提供了任意两个 Qt 对象之间的通信机制。其中,信
号会在某个特定情况或动作下被触发,槽是用于接收并处理信号的函数。例如,要将一个窗
口中的变化情况通知给另一个窗口,则一个窗口发送信号,另一个窗口的槽接收此信号并进
行相应的操作,即可实现两个窗口之间的通信。这比传统的图形化程序采用回调函数的方式
实现对象间通信要简单灵活得多。每个 Qt 对象都包含预定的信号和槽,当一某一特定事件
发生时,一个信号被发射,与信号相关联的槽则会响应信号完成相应的处理。
信号与槽机制常用的连接方式为:
connect(Object1,SIGNAL(signal),Object2,SLOT(slot))
signal 为对象 Object1 的信号,slot 为对象 Object2 的槽,Qt 的窗口部件都包含若干个预定
义的信号和若干个预定义的槽。当一个类被继承时,该类的信号和槽也同时被继承。开始人
员也可以根据需要定义自己的信号和槽。
信号与槽机制可以有多种连接方式,下图描述了信号与槽的多种可能连接方式。
http://showmecode.cn/links/book

1.一个信号可以与另一个信号相连
connect(Object1,SIGNAL(signal1),Object2,SIGNAL(signal1))
即表示 Object1 的信号 1 发射可以触发 Object2 的信号 1 发射。
2.表示一个信号可以与多个槽相连
connect(Object1,SIGNAL(signal2),Object2,SLOT(slot2))
connect(Object1,SIGNAL(signal2),Object3,SLOT(slot1))
3.表示同一个槽可以响应多个信号
connect(Object1,SIGNAL(signal2),Object2,SLOT(slot2))
connect(Object3,SIGNAL(signal2),Object2,SLOT(slot2))
注:本文基本上是经过改编的《Linux 窗口程序设计--Qt4 精彩实例分析》一书的 PyQt4 for
windows 版本
可以这么写: b.clicked.connect(app.quit)
这样就少了一些 hardcode 的字符串了,更加 pythonic
http://showmecode.cn/links/book

实例 2 标准对话框的使用
分类: -- PyQt4 2010-12-03 10:34 2105 人阅读 评论(2) 收藏 举报
和大多数操作系统一样,Windows 及 Linux 都提供了一系列的标准对话框,如文件选择,
字体选择,颜色选择等,这些标准对话框为应用程序提供了一致的观感。Qt 对这些标准对
话框都定义了相关的类,这些类让使用者能够很方便地使用标准对话框进行文件,颜色以及
字体的选择。标准对话框在软件设计过程中是经常需要使用的。
Qt 提供的标准对话框除了本实例提到的,还有 QErrorMessage,QInputDialog,
QMessageBox,QPrintDialog,QProcessDialog 等,这些标准对话框的使用在本书的后续
部分将会陆续介绍。
本实例主要演示上面几种标准对话框的使用,如下图所示
在上图中,单击“文件对话框”按钮,会弹出文件选择对话框,选中的文件名将显示在右连,
单击“颜色对话框”按钮,会弹出颜色选择对话框,选中的颜色将显示在右边,单击“字体对话
框”按钮,会弹出字体选择对话框,选中的字体将更新右边显示的字符串。
实现代码如下:
[python] view plaincopyprint?
1. # -*- coding: utf-8 -*-
2. from PyQt4.QtGui import *
3. from PyQt4.QtCore import *
4. import sys
5.
6. QTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))
7.
8. class StandardDialog(QDialog):
http://showmecode.cn/links/book
剩余131页未读,继续阅读

















安全验证
文档复制为VIP权益,开通VIP直接复制

评论1