QT语言介绍

上传人:灯火****19 文档编号:142981181 上传时间:2020-08-25 格式:PPT 页数:131 大小:789KB
返回 下载 相关 举报
QT语言介绍_第1页
第1页 / 共131页
QT语言介绍_第2页
第2页 / 共131页
QT语言介绍_第3页
第3页 / 共131页
QT语言介绍_第4页
第4页 / 共131页
QT语言介绍_第5页
第5页 / 共131页
点击查看更多>>
资源描述

《QT语言介绍》由会员分享,可在线阅读,更多相关《QT语言介绍(131页珍藏版)》请在金锄头文库上搜索。

1、QT,Qt- C+图形用户界面库,一 QT介绍,Qt- C+图形用户界面库,1. Qt是一个跨平台的C+图形用户界面库,由Nokia公司出品。目前产品包括Qt、Qt/Embedded、快速开发工具Qt Designer、国际化工具Qt Linguist等部分。Qt支持Unix,Linux,Windows,WinCE,Symbian。 2. Qt是基于面向对象的C+语言,它提供了信号(signal)和槽(slot)的对象通信机制,具有可查询和可设计的属性,以及强大的事件和事件过滤器。同时,它还具有字符国际化,即支持根据上下文进行国际化字符串翻译。许多Qt特性基于QObject的继承,通过标准C+

2、技术实现。,Qt介绍,Qt- C+图形用户界面库,3. Qtopia是为了Linux的PDA、智能电话和其他移动设备设计的一个全面并且可以用户化的应用程序平台和用户界面。 4. Qt/Embedded 是面向嵌入式系统的Qt版本,是Qt的嵌入式Linux窗口,是完整的自包含C+GUI(图形用户界面)和基于Linux的嵌入式平台开发工具。Qt/Embedded API可以用于多种开发项目。许多基于Qt的X Window程序可以非常方便地移植到嵌入式版本,适用于高端PDA等产品。Qt/Embedded内部对于字符集的处理采用了UNICODE编码标准。,Qt- C+图形用户界面库,一 QT介绍 二

3、QT特征,Qt特征,Qt- C+图形用户界面库,Qt作为新型的GUI开发工具,具有与一般的工具包所不同的特征,使它的应用非常广泛。 2.1.面向对象 2.2.组件间的相互通信 2.3.友好的联机帮助 2.4.用户自定义 2.5.方便性 2.6.国际化 2.7.丰富的API函数 2.8.完整的一套控件 2.9.高性能的工具 2.10.GUI竞争 2.11.可用户化的外观 2.12.优越的绘画功能 2.13.绘制2D/3D图形功能,Qt特征,Qt- C+图形用户界面库,2.1.面向对象 Qt具有模块设计和控件或元素的可重用性的特点。一个控件不需 要知道它的内容和用途,通过signal和slot与外

4、界通信、交流。而且,所 有Qt的控件都可通过继承。 2.2.控件间的相互通信 Qt提供signal和slot概念,这是一种安全可靠的方法,它允许回调, 并支持对象之间在彼此不知道对方信息的情况下,进行合作,这使Qt非 常合适于真正的控件编程。 2.3.友好的联机帮助 Qt包括大量的联机参考文档,有超文本HTML方式、UNIX帮助页、 man手册和补充的指南。对于初学者,指南将一步步地解释Qt编程。,Qt特征,Qt- C+图形用户界面库,2.4.用户自定义 其他的工具包在应用时都存在一个普遍的问题,就是经常没有真正 适合需求的控件,生成的自定义控件对用户来说,也是一个黑匣子。比 如,在Motif

5、手册中就讨论了用户自定义的控件的问题。而在Qt中,能够 创建控件,具有绝对的优越性,生成自定义控件非常简单,并且容易修 改控件。 2.5.方便性 由于Qt是一种跨平台的GUI工具包,所以,它对编程者隐藏了在处 理不同窗口系统时的潜在问题。为了将基于Qt程序更加方便,Qt包含了 一系列类,该类能够使程序员避免了在文件处理、时间处理等方面存在 依赖操作系统方面的细节问题。,Qt特征,Qt- C+图形用户界面库,2.6.国际化 Qt为本地化应用提供完全的支持,所有用户界面的文本或字符串都可 以利用翻译工具将其译成各国语言。 2.7.丰富的API函数 为了适合用户的需求,Qt的API提供了C+类,用于

6、专门的GUI。 Qt还提供了基于模板的初始化、文件和通用的I/O设备、目录管理、 日期/时间类、常用表达式解析等。目的是利用这些类,建立或生成 不同的功能,用它们来实现Qt的通用化。除此之外,也可以利用STL 标准模块库或其他工具包。,Qt特征,Qt- C+图形用户界面库,2.8.完整的一套控件 Qt编程的基本模块(构件)称为控件,一个控件是一个用户界面的组 成部分,比如按钮、滚动条。Qt包含用来创建专业外观的用户界面所需 要的所有控件。 2.9.高性能的工具 对于库来讲,它的有效性远超过应用性。为了提高Qt库的有效性、 快捷性,对其进行了优化,Qt能执行一些基本的任务,比如图形的润色, 比一

7、般的基于平台的代码要快。Qt是基于Xlib, 而不依赖Motif工具包。,Qt特征,Qt- C+图形用户界面库,2.10.GUI竞争 大多数GUI工具包是基于分层的方法。比如,工具包为本地窗口系 统组件提供了很多C+类,这种结构使组件的继承性和通用性变得很差。 在层次化的工具包中,GUI功能常成为所有使用的窗口系统所必须的最普 遍的基础。Qt仿效本地窗口系统的组件,这是一种非常复杂的技术。Qt 还提供一些更有用的函数,类似文本的旋转,适用于多种平台。 2.11.可用户化的外观 Qt支持主题,所以基于Qt的应用软件能在Mac外观、 Windows等外 观主题之间互换,甚至改变运行时间。这些应用程

8、序不管是在X Window 下,还是在Microsoft Windows下都可以独立操作、运行。,Qt特征,Qt- C+图形用户界面库,2.12.优越的绘画功能 Qt的绘画工具QPainter类,在任意一个绘图设备上都可以润色图形。 绘图设备包括组件、像素映射、图形文件和打印机,相同的代码可以用 在4种不同类型的设备上。 QPainter类支持复杂的同等系统的转换,很容 易在所有平台上画旋转文本和像素映射。 2.13.绘制2D/3D图形功能 Qt提供了QGLWidget类,使用该类能够绘制2D/3D图形。用 QGLWidget就像用一个Qt组件一样方便。这比纯粹的用OpenGL做的3D 图形更

9、好使用。,Qt- C+图形用户界面库,一 QT介绍 二 QT特征 三 QT组成部分,Qt系统构造,Qt- C+图形用户界面库,Qt系统构造,Qt- C+图形用户界面库,QtCore不但包含QString、QList和QFile等工具类,而且包含QObject和QTimer等内核类。因为QApplication类有refactored,所以它能使用在非GUI应用程序中。它将拆分为:QCoreApplication(在QtCore中)和QApplication(在QtGui中)。 这种拆分将使用Qt开发服务器应用程序,无需连接所有多余的与GUI相关的代码,无需要求与GUI相关的系统程序将要放到当前

10、的目标机器中成为可能。(例如:Xlib在X11上,Carbon在Mac OS X上)。,Qt系统构造,Qt- C+图形用户界面库,如果你想利用qmake命令生成Makefile文件,qmake将默认链接到你的应用程序依赖的QtCore和QtGui中。如果你想删除具有依赖关系的GUI,请在您的.profile文件中加入以下内容: QT -= gui 如果想使用其他的库文件,请加入以下内容: QT += network opengl 如果你要编译.ui文件,你也需要在.pro文件中加入以下内容: CONFIG +=uic3,a very powerful mechanism for seamles

11、s object communication called signals and slots powerful events and event filters contextual string translation for internationalization sophisticated interval driven timers that make it possible to elegantly integrate many tasks in an event-driven GUI hierarchical and queryable object trees that or

12、ganize object ownership in a natural way guarded pointers (QPointer) that are automatically set to 0 when the referenced object is destroyed, unlike normal C+ pointers which become dangling pointers when their objects are destroyed a dynamic cast that works across library boundaries.,Qt-对C+的扩展,Qt- C

13、+图形用户界面库,一 QT介绍 二 QT特征 三 QT系统构造 四 QT的类,Qt系统的类,Qt- C+图形用户界面库,Qt系统的类,Qt- C+图形用户界面库,Qt- C+图形用户界面库,一 QT介绍 二 QT特征 三 QT组成部分 四 QT的类 五 QT的控件,Qt的组件,Qt- C+图形用户界面库,5.1 按钮 5.1.1 推动按钮 5.1.1.1 推动按钮的描述 推动或者命令按钮是任何GUI(图形用户界面)中最常用的窗口部件, 它来命令计算机执行一些操作,或者回答一个问题。典型的按钮有确定 (OK)、应用(Apply)、撤消(Cancel)、关闭(Close)、是(Yes)、否(No)

14、和 帮助(Help)等。 该按钮是矩形的,并且通常显示一个文本标签来描述它的操作。标 签中有下划线的字母(在此它的前面用“ 这个实例中快捷键是Alt+H,并且文本标签将被显示为Help。,Qt的组件,Qt- C+图形用户界面库,5.1.1.2 推动按钮的成员 QPushButton ( QWidget * parent = 0 ) 构造一个没有文本的推动按钮,参数为parent。 QPushButton ( const QString /窗体初始化 QPushButton *pushbutton = new QPushButton(Quit); QObject:connect(pushbutt

15、on,SIGNAL(clicked(),pushbutton,SLOT(close(); pushbutton-show();/显示该窗体 return app.exec(); 运行该实例的结果,如图所示:,Qt的组件,Qt- C+图形用户界面库,5.1.2 单选按钮 5.1.2.1 单选按钮的描述 QRadioButton窗口部件为单选按钮提供了一个文本标签。 QRadioButton是一个能够切换开(选择)或者关(没有选择)的选择按钮 。通常单选按钮是用于当前用户选择许多中的一个选项。在同一时刻, 单选按钮组中仅仅只有一个按钮被选择;如果用户选择其他按钮,以前 选择的按钮将要切换为关闭状态

16、。 当一个按钮切换开或者关的时候,它就会发射toggled()信号。如果任 何时刻你想触发一个行为来改变按钮的状态的时候,可以连接这个信号。 否则,使用isChecked()来查看是否有其他按钮被选择。像上述的 QPushButton一样,单选按钮能够显示文本和可选择的小图标。文本能 够在构造函数中被设置,或者使用setText()函数;设置图标可以使用 setIcon()函数来设置。,Qt的组件,Qt- C+图形用户界面库,5.1.2.2 单选按钮的成员 QRadioButton:QRadioButton ( QWidget * parent = 0 ) 构造一个单选按钮的窗口组件,但是该组件没有文本或者图象映 射。parent参数传递给QAbstractButton构造函数。 QRadioButton:QRadioButton ( const QString label-setFrameStyle(QFrame:Pa

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号