QT之窗口部件及窗口类型

今天我们来继续学习QT的相关知识,本文的内容是介绍QT的窗口部件及窗口类型。
先说下窗口组件,图形用户界面由不同的窗口和窗口组件构成,一般是在<QtGui>中包含,对应Qt中的GUI模块;Qt以组件对象的方式构建图形用户界面;组件的类型分为两种:1、容器类(父组件),用于包含其他的界面组件。2、功能类(子组件),这个是用于实现特定的交互功能。
**Qt中没有父组件的顶级组件叫做窗口!!!**
以下图为例,我们进行说明:


QWidget 类继承自 QObject 类和 QPaintDevice 类:QObject 是所有支持 Qt 对象模型的基类;QPaintDevice 是 Qt 中所有可绘制组件的基类
下面我们来讲讲 QWidget 组件,有关 QWidget 组件的详细信息可在 Qt 中的帮助进行查询

QWidget 能够绘制自己和处理用户的输入;QWidget 是 Qt 中所有窗口组件类的父类(super class);QWidget 是所有窗口组件的抽象;Qt 中的每个窗口组件都是一个 QWidget;QWidget 类对象常作为父组件或顶级组件使用。
下面我们来讲解 QLabel 组件,如图:

它在 5.8 版本中需要包含 #include <QLabel> 这个头文件才能使用;QLabel 用于显示一个提示性的字符串;QLabel 是功能性组件,一般需要父组件作为容器;它可以作为一个窗口存在,但是没意义。如图:

Qt中可以根据需要定制窗口式样,在此说明下,大家可以下去自己实践下。
窗口类型:
1、Qt::Dialog 对话框类型
2、Qt::Window 主窗口类型
3、Qt::SplashScreen 启动画面类型
4、...
窗口标志:
1、Qt::WindowStaysOnTopHint
2、Qt::WindowContextHelpButtonHint
3、...
本节关于窗口组件及窗口类型的介绍就到此为止,大家对哪部分感兴趣,可以自己在Qt中帮助里查询相关信息进行学习,最后的程序效果图:

    以上内容来自狄泰软件学院的QT教程,欢迎大家一起来学习,可以加我QQ:243343083,一起学习。狄泰技术交流群:199546072

原文地址:http://blog.51cto.com/12810168/2087886

时间: 2024-09-30 13:36:43

QT之窗口部件及窗口类型的相关文章

窗口部件及窗口类型

窗口部件和窗口类型并不是Qt中才有的概念,其他的平台中也有类似的概念. 图形用户界面由不同的窗口和窗口组件构成(也就是说窗口和窗口组件是图形用户界面开发中的最小单元)<QtGui>头文件包含窗口组件,对应Qt中的GUI模块Qt以组件对象的方式构建图形用户界面 组件的类型:——容器类(父组件):用于包含其它的界面组件——功能类(子组件):用于实现特定的交互功能 Qt中没有父组件的顶级组件叫做窗口 QWidget类继承自QObject类和QPaintDevice类——QObject是所有支持Qt对

第6课 窗口部件及窗口类型

1. 窗口组件 (1)图形用户界面由不同的窗口和窗口组件构成 (2)<QtGui>头文件包含窗口组件,对应Qt中的GUI模块 (3)Qt以组件对象的方式构建图形用户界面 (4)组件类型 ①容器类(父组件):用于包含其他的界面组件.Qt中没有父组件的顶级组件叫窗口 ②功能类(子组件):用于实现特定的交互功能 2. 窗口组件的类继承图 (1)QWidget继承图 ①QObject是所有支持Qt对象模型的基类 ②QWidget类继承自QObject类和QPaintDevice类 ③QPaintDev

【Qt学习笔记】窗口部件整理

关于Qt中窗口部件的学习 今天开始学习Qt的窗口部件,领略一下Qt的神奇之处,记得2012年的那年冬天,我还学Java呢,现在基本上和Java说再见了,不过对于嵌入式的开发Qt还是举足轻重的,我想趁着假期的时间,好好学习.考研之后发现一个问题,无论当初你学的有多明白,总会忘记,最好的方法就是将他们记录下来,甚至写下你当时的心情,如果有一天你需要了,回过头来看看,是一笔不错的财富. 1. QDialog类对话框 1.1 模态和非模态对话框 对于对话框,有模态(modal)和非模态(modeless

自定义QT窗口部件外观之QStyle

自定义QT窗口部件外观 重新定义Qt内置窗口部件的外观常用的方法有两种:一是通过子类化QStyle 类或者预定义的一个样式,例如QWindowStyle,来定制应用程序的观感:二是使用Qt样式表. QStyle 类的使用 1.      准备必要的背景图片.在你想添加自定义风格的工程目录下新建一个文件夹“images”,将背景图片等放入文件夹“images”. 2.      点击Qt Creator的“文件”->“新建文件或工程”->模板选择“Qt”,再选择Qt资源文件->点击“选择”

Qt自定义窗口部件

QtDesigner自定义窗口部件有两种方法:改进法(promotion)和插件法(plugin) 改进法 1.改进法之前,要先写好子类化QSpinBox后的HexspinBox.h和HexspinBox.cpp文件.把这两个文件拷贝到想要的项目中. HexspinBox.h Cpp代码   #ifndef HEXSPINBOX_H #define HEXSPINBOX_H #include <QSpinBox> class QRegExpValidator; class HexSpinBox

Qt窗口部件及子部件

QWidget类是所有用户界面对象的基类,被称为基础窗口部件. #include <QApplication> #include<QLabel> #include<QWidget> int main(int argc, char *argv[]) { QApplication a(argc, argv); // 新建QWidget类对象,默认parent参数是0,所以它是个窗口 QWidget *widget = new QWidget(); // 设置窗口标题 wid

如何获得 Qt窗口部件在主窗口中的位置--确定鼠标是否在某一控件上与在控件上的位置

用Qt Creator 设计程序时,最方便的就是ui设计器,可以很容易的得到想要的布局. 但是这样自动布局带来的后果是很难知道窗口中某一部件在主窗口中的相对位置. 在处理子窗口鼠标事件时变的很麻烦.主窗口有菜单.工具条等,想用鼠标绘图, 把鼠标轨迹映射到窗口部件上,这些问题. 其实最主要的是获得窗口部件的起始点相对主窗口的位置. 例如:在主窗口拖入一个QScrollArea 在其上放一个QLabel用来显示鼠标事件. 可以在ui对象结构上看到如下结构. 大家知道,我们可以用pos()来获得某一窗

Qt 代码: 子窗口调用父窗口(其实就是用指针直接访问)

之前的 Qt 编程大多只涉及简单的多窗口,并未染指窗口间的传值交互,想来还是“涉世未深”,对 Qt 的理解.应用还需殷勤努力. 这次的问题是这样的,我想要实现一个类似QQ.阿里旺旺的聊天客户端,在弹出表情对话框后,能够选择表情并返回给聊天窗口的消息输入框,这就需要两个窗口之间的传值交互. 首先想到的解决方法自然是使用Qt自带的signal/slot机制.即首先发信号给父窗口,父窗口接到信号执行槽函数发送一个携带所需数据的信号给子窗口.但是疑问来了:要在子窗口中接收到父窗口的信号必须进行signa

C++ GUI Qt4编程-创建自定义窗口部件

C++ GUI Qt4编程-创建自定义窗口部件 Qtqt4 通过Qt窗口部件进行子类化或者直接对QWidget进行子类化,就可以创建自定义窗口部件,下面示范两种方式,并且也会说明如何把自定义窗口部件集成到Qt设计师中,这样就可以像使用内置的Qt窗口部件一样来使用它们,最后展示使用双缓冲技术(一种用于快速绘制的强大技术)的自定义窗口部件. 1.自定义Qt窗口部件 我们发现Qt窗口部件需要更多的自定义定制,这些定制可能要比它在Qt设计师里设置的属性或者对它调用的那些函数更多一些,一个简单而直接的解决