第19章-QT图形界面设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

Linux应用与开发典型实例精讲配套教材:《Linux应用与开发典型实例精讲》邱铁、于玉龙、徐子川编著.清华大学出版社.2010.5Email:openlinux21@第19章 QT图形界面设计学习本章要达到的目标:了解LinuxX-Windows;掌握LinuxQT信号-Slot机制;熟练利用QTDesigner设计图形界面应用程序熟悉QT编程,实现如图19.1所示单位转换工具19.1X-Windows概述X-Windows,简称X,最初由麻省理工学院开发,目前主要由开源社区的编程人员进行维护。X是一种采用鼠标和键盘操作的桌面式图形系统,具有桌面、窗口、按钮、选择框、输入框等丰富的图形界面组件。X-Windows环境采用了一种服务器—客户端的模型进行窗口图形界面的管理。图形界面启动过程中,会启动一个X服务器,该服务器进程作为X-Windows的守护进程,在X-Windows存续期间一直在运行,用来进行窗口的管理、通信的调用、界面的渲染等工作。当我们启动一个图形化界面的程序时,其实是打开了一个X-Windows的客户端,客户端连接到服务器上。X服务器对其中所有注册的窗口进行管理,包括数据通信、界面渲染等等。19.2QT编程QTDesigner与QmakeQT信号与Slot机制19.2.1概述Qt是一套跨平台的图形界面开发平台,最早由挪威的TrollTech公司于1992年进行开发。2008年6月,NOKIA获得了Qt的开发权,继续对Qt平台进行完成开发。Qt图形界面开发平台可进行嵌入式系统应用程序和桌面系统应用程序的开发,支持Windows、Linux/X11、MacOSX等操作系统。Qt采用C++语言,包含了丰富C++类,包括窗口界面设计的接口、IO控制接口、绘图接口、多媒体接口、数据库操作接口、网络通信接口、XML接口、模块测试接口等丰富的开发接口。19.2.2QTDesigner与QmakeQtDesigner是Qt程序的可视化开发工具。QtDesigner可以方便的完成Qt工程的建立和管理,Qt窗体程序的界面设计,Qt程序的调试等完整的Qt应用开发流程。QtDesigner界面19.2.3QT信号与Slot机制Qt中采用了一种全新的对象和方法的关联与通信机制,它被称为信号与槽机制。信号和槽机制是独立于标准C++编译器的,在编译之前需要经过Qt的专门预处理工具MOC(MetaObjectCompiler,元组建编译器)对代码进行预处理后才能后进一步进行C++代码的编译。MOC会将Qt应用程序中特有的代码自动转化为相应的标准C++语法代码。信号和槽的使用可以实现信息封装,增加程序的灵活性。当槽函数被触发时,说明与其关联的信号被接收,但他不需要了解谁发出了信号信号信号是Qt中对事件的一种抽象,当一个事件到来时,信号会被发射。当信号被发射时,与其关联的槽函数会被执行。信号的声明形式如下:槽槽是Qt中负责信号处理的实体,当有信号发时,与信号关联的所有槽会依次执行。在Qt的基类QObject中有一个成员函数用来完成信号和槽的映射,函数的原型如下:Qt要求必须使用宏SINGAL将信号函数指针转化为指定的类型。member是槽,Qt要求必须使用宏SLOT转化函数指针。宏SINGAL和SLOT的参数形式如下:SIGNAL(funname(param_type_1,param_type_2,…))SLOT(funname(param_type_1,param_type_2,…))19.3应用实例训练开发流程19.3.1创建工程目录打开QTDesigner如图19.4所示界面表明成功打开QTDesigner19.3.2新建工程选择FileNew菜单项,选择C++Project,创建新的工程19.3.3绘制窗体控件列表向组合框(ComboBox)添加选项。对cbConvertFrom添加KiloMeters、Meters、CentiMeters、MilliMeters,对cbConvertTo添加Miles、Yards、Feet、Inches。19.3.4编写代码1.添加槽处理函数2.建立信号-槽的映射:通过菜单项ToolsConnectSignal/Slots打开信号槽的映射窗口。3.编辑Convert函数 4.为项目添加主cpp文件19.3.5生成Makefile在终端中使用qmake命令生成Makefile文件。19.3.6编译运行在终端中,运行make命令编

文档评论(0)

177****7891 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档