窗口部件及窗口类型
Posted -glb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了窗口部件及窗口类型相关的知识,希望对你有一定的参考价值。
窗口部件和窗口类型并不是Qt中才有的概念,其他的平台中也有类似的概念。
图形用户界面由不同的窗口和窗口组件构成(也就是说窗口和窗口组件是图形用户界面开发中的最小单元)
<QtGui>头文件包含窗口组件,对应Qt中的GUI模块
Qt以组件对象的方式构建图形用户界面
组件的类型:
——容器类(父组件):用于包含其它的界面组件
——功能类(子组件):用于实现特定的交互功能
Qt中没有父组件的顶级组件叫做窗口
QWidget类继承自QObject类和QPaintDevice类
——QObject是所有支持Qt对象模型的基类
——QPaintDevice是Qt中所有可绘制组件的基类
QWidget组件
QWidget能够绘制自己和处理用户的输入
QWidget是Qt中所有窗口组件类的父类(super class)
QWidget是所有窗口组件的抽象
Qt中的每个窗口组件都是一个QWidget
QWidget类对象常作为父组件或顶级组件使用
QWidget编程初探
#include "Widget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w; //w没有父组件,因此它就是一个窗口
w.show();
return a.exec();
}
Widget w; w没有父组件,因此它就成为了窗口。所看到的名为Test这个对话框是由Qt自动生成的,Qt在QWidget的外面加上了对话框一些特有的东西,比方说标题、最大化和最小化、关闭按钮。真正的widget是对话框里面那块,它什么也没有,因为QWidget是所有图形用户组件类的父类。
以上是关于窗口部件及窗口类型的主要内容,如果未能解决你的问题,请参考以下文章
Qt::WindowFlags枚举类型(对Qt::Widget Qt::Window Qt::Dialog分别讲解,其中Qt::Widget是两用的,如新的窗口部件没有父窗口部件,则它是一个独立的窗口
QT中QWidgetQDialog及QMainWindow的区别