开发工具:
文件大小: 41mb
下载次数: 0
上传时间: 2019-02-23
详细说明:
Linux-QT精讲-窗口程序设计lop Sage. com
目录
第1章基本对话框
1
实例1 Hello world!.
申丰:丰福丰干斗干中号分““中世出·
实例2标准对话框的使用
实例3各类位置信息…
10
实例4使用标准输入框
15
实例5各种消息框的使用
20
实例6实现QQ抽屉效果……
27
实例7表格的使用…
30
实例8使用进度条…
1
实例9利用 Qt Designer设计一个对话框
35
实例10在程序中使用ui….....40
实例11动态加载ui
….43
第2章布局管理
45
实例12基本布局管理……
实例13多文档.…
52
实例14分割窗口
实例15停靠窗口…
实例16堆栈窗体
61
实例17综合布局实例
6
第3章对话框进阶
69
实例18可扩展对话框
实例19利用 PAlette i改变控件颜色…113
实例20窗体的淡入淡出效果…
+和开于生着都由鲁非市南申审
79
实例21不规则窗体
84
实例22电子钟
87
实例23程序启动画面
92
www.topsage.com
Linux官祖存极行Q14实侧分着
9自9…
第4章 QMainWindow
5
实例24基本 QMain window主窗口程序9
实例25打印文本
1103
实例26打印图像
非自t·●·命······
静。非。●··。香
106
实例27图片的缩放与旋转
…1.4108
实例28在工具栏中嵌入控件…112
实例29设置字体、字号等格式属性
115
实例30设置文本排序及对齐
t·命看··a·鲁·●·●章看·咖
第5章图形与图画....…130
实例31利用 Qpainter绘制各种图形
…132
实例32利用 QPainterPath进行画图
鲁4鲁自垂有香·●看。·●···非···章有·鲁····●···
143
实例33渐变效果
●罪
实例34 QPainter坐标系的变形
看●··●音非●命非●···垂···●章歌看非
159
实例35SVG格式图片的显示…………162
实例36一个简单的绘图工具….....……………169
实例37改变图片的透明度…
击ss●·_号·· 000400oa·a····母··;···音··········
177
实例38橡皮筋线
182
第6章 Graphics view……
185
实例39地图浏览器
187
实例40各种 Graphics Item
a●···●··自a音母:命·非音●···●·······
193
实例41 Graphics Item的各种变形…
202
实例42飞舞的蝴蝶…....208
第7章Mode/iew
…1212
Db非鲁Dp
实例43文件目录浏览器
看,e“a日日自·看··看·
215
实例44利用特定控件进行表项编辑
217
实例45自定义Moel
222
实例46柱状统计图……
230
第8章网络与通信
241
实例47获取本机网络信息…
…242
实例48基于UDP的网络广播程序
●非非。鲁··自
244
www.topsage.com
自e
实例49基于TCP的网络聊天室程序…
oDSaoeom
实例50实现HTTP文件下载,
256
实例51实现FTP上传和下载
第9章磁盘文件
∴266
实例52获取文件属性
267
实例53文件浏览器…
269
第10章事件
273
实例54获得鼠标事件
274
实例55使用键盘控制移动…276
实例56事件过滤器实现动态图片按钮…
281
第11章其他
284
实例57利用 SEttings保存程序窗口状态
+1285
实例58利用 QData Stream对文件进行存取…10
实例59改变鼠标指针形状
+,.293
实例60改变窗体显示风格
295
实例61拖拽图标
299
实例62拖拽文字
307
实例63字符串编码格式转换
…1313
www.topsage.com
www.topsage.com
lop Sage. com
第1章基本对话帼
本章的实例对α编程的基本流程、标准对话框的使用方法以及 Qt Designer的使用
方法等进行了分析,包括11个实例:
O Hello World
C标准对话框的使用
各类位置信息
②使用标准输入框
□各种消息框的使用
实现QQ抽屉效果
表格的使用
C使用进度条
利用 Qt Designer设计一个对话框
C在程序中使用ui
C动态加载u
www.topsage.com
9舍
Linux窗k程存設竹—Qt4滑彩实例分折
实例1He‖ o World!
知识点:
□开发α程序的基本流程和编译运行方式
口信号和槽机制( Signale&Slot)
本实例实现一个“ Hello world!”例子,简单介绍αt编程的基本流程,以及αt程
序的编译运行方式。实例效果图如图1-1所示。
Hello. word I
图1- Hello world
这是一个简单的例子,整个对话框只有一个按钮,单击该按钮,对话框关闭,退出
程序
实现代码如下:
1 #include
2 #include
3 int main (int argc, char *argvD)
{
QApplication app(argc, argv);
QPushButton b("Hello World !");
bshow
Qobject: connect(&b, SIGNAL(clicked), &zapp, SLOT(quito)
8
return app.execo;
第1行包括< APplication>,所有ot图形化应用程序都必须包含此文件,它包含了
αt图形化应用程序的各种资源、基本设置、控制流以及事件处理等,若是O的非图形化
应用程序,则需包含< QCore Application>
杏小贴士:Q最初的框架只有关于图形化应用的类,随着它的一步步发展,Q已独立发展
出了许多非图形化的类库,如数据库应用、XML解析等
www.topsage.com
算1平基卒对语祖
第2行包含了程序中要应用到的按钮控件的头文件。
oSAge. com
小贴士:在Q4中,头文件的包含可以采用类似 APplication>和< QPushButton>的形
式,也可以写成< lapplication. h>和< qpushbutton. h>的形式
第3行为应用程序的入口,所有Qt程序都必须有一个min0函数,以argc和argv
作为入口参数。
第4行新创建了一个 APplication对象,每个Qt应用程序都必须有且只一个
APplication对象,采用argc、argv作为参数,便于程序处理命令行参数
第5行创建了一个 QPushButton对象,并设置它的显示文本为“ Hello world!”,由
于此处并没有指定按钮的父窗体,因此以自己作为主窗口
第6行调用 showO方法,显示此按钮。控件被创建时,默认是不显示的,必须调用
showO函数来显示它。
第7行的 Qobject: connecto方法是Qt最重要的特征,即信号与槽的机制。当按钮被
按下则触发 clicked(0信号发射,与之相连的 APplication对象的槽qui0响应按钮信号,
执行退出应用程序的操作。关于信号与槽机制在本实例最后将进行详细的分析。
最后调用 APplication的exec(O方法,程序进入消息循环,等待可能输入进行响应
Qt完成事件处理及显示的工作,并在应用程序退出时返回 execO的值。
α程序的编译运行很简单,利用αt提供的 qmake工具能够很方便地对程序进行编
译,编译流程如下:
qmake -project
q
mak
make
Thello
其中, gmake-project命令用于生成程序的项目文件(*pro); gmake用于生成程序
的 Makefile文件;make编译 Makefile文件得到可执行文件;最后执行程序即可出现
图1-1所示的对话框,一个简单的 Hello world!例子完成。
小贴士:确保Q的环境变量路径设置正确,程序编译时若岀现连接错误,请首先检查
有关Qt的环境变量,保证调用的 gmake为相应的Qt版本
信号与槽机制( signal&slot)作为Qt最重要的特性,提供了任意两个Q对象之间的
通信机制。其中,信号会在某个特定情况或动作下被触发,槽是用于接收并处理信号的
函数。例如,要将一个窗口中的变化情况通知给另一个窗口,则一个窗口发送信号,另
一个窗口的槽接收此信号并进行相应的操作,即可实现两个窗口之间的通信。这比传统
www.topsage.com
Linux程升—Qt4祷豹失分
的图形化程序采用回调函数的方式实现对象间通信要简单灵活得多。每个Q对象都包含
预定的信号和槽,当某一特定事件发生时,一个信号被发射,与信号相关联的槽则会响
应信号完成相应的处理。
信号与槽机制常用的连接方式为:
connect( Objectl; SIGNAL(signal), Object2, SLOT(slot));
signal为对象 Objectl的信号,sot为对象 Object2的槽,Qt的窗口部件都包含若干
个预定义的信号和若干个预定义的槽。当一个类被继承时,该类的信号和槽也同时被继
承。开发人员也可以根据需要定义自己的信号和槽。
信号与槽机制可以有多种连接方式,图1-2中描述了信号与槽的多种可能连接方式
object 1
Object 2
signal 1
signal I
signal 2
ignal 2
slot 1
slot 1
slot 2
lot 2
Object 3
SI
sig
slot 1
slot 2
图1-2信号与槽的连接方式
①一个信号可以与另一个信号相连
connect(Objectl, SIGNAL(signal: 1), Object2, SIGNAL(signal 1 );
即表示 ObjectI I的信号1发射可以触发obec的信号1发射。
②表示同一个信号可以与多个櫚相连。
connect(objectl, SIGNAL(Signal 2), objeot2,SIGNAL(slot2)::A
connect(objectl SIGNAL (signal 2) object3: SIGNAL(slot: 1);
③表示同一个槽可以响应多个信号。
www.topsage.com
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.