当前位置:C++技术网 > 资讯 > Qt零基础教程:4.2 QWidget详解(2):QWidget介绍

Qt零基础教程:4.2 QWidget详解(2):QWidget介绍

更新时间:2015-07-23 11:45:49浏览次数:1+次

    简要介绍QWidget的属性及其子类

    在这篇文章中,我简要的介绍一下QWidget的一些属性和函数。我数了一下,QWidget的属性有58个。



这里我也要说一些罗嗦的话,就是Qt的帮助里面的对QWidget的介绍:

1.从开始菜单中找到Assistant然后打开。

2.然后再Assistant中搜索QWidget.

3.我们看一下QWidget,发现他被很多的类继承。所以我们这里要首先研究QWidget这个类。但是并不会一下子将这个类讲解完全。我会将一些常用的函数,然后再后面结合一些实际的例子再对QWidget中的一些函数进行介绍,否则现在介绍很多东西也用不上。

3.打开Designer并且在后面选择关闭

4.这个时候出现的是Designer的整体结构。

5.在Designer的右边有很多控件,这些控件基本上都是继承自QWidget,所有这里研究完了QWidget之后我们就慢慢的研究右边的控件类。基本上所有的程序的主要窗口都是由这些空间组成的,所有这些控件就相当于一个一个的小零件一样,而QWidget就是制作这些零件的最基础的材料。

下间就是翻译一下Assistant中对QWidget类的一些简单的介绍:

QWidget类是所有用户界面对象的基类。也就是说QtGUI的所有的窗口部件都是继承自QWidget的。当然有一些要显示的内容并不是继承自QWidget的。

窗口部件是用户界面的一个原子(这里的原子可以理解为组成单元):它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己的表现。每一个窗口部件都是矩形,并且它们按Z轴顺序排列的。

这里的Z轴顺就是叠放的顺序,就好像你在桌子上放了一摞书,以桌面为xy坐标轴,空间向上为z轴。这样放在最上面的书是可以看见的,有什么事情也就是最上面的书最先得到,但是这里和放书不同的是,书是从最底下开始放的,而窗口不见是从最上面开始放的。

一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。

QDialog是最普通的顶级窗口。不被嵌入到一个父窗口部件的窗口部件被叫做顶级窗口部件。通常情况下,顶级窗口部件是有框架和标题栏的窗口(尽管如果使用了一定的窗口部件标记,创建顶级窗口部件时也可能没有这些装饰。)在Qt中,QMainWindow和和不同的QDialog的子类是最普通的顶级窗口。

一个没有父窗口部件的窗口部件一直是顶级窗口部件。一个窗口部件1嵌入在窗口2里面,那个窗口2就是他的父窗口。如果父窗口2嵌入到另外一个窗口3中,那么后面的那个窗口3就是前面两个窗口12的父窗口。之前的那个窗口2就不是窗口1的父窗口了。这是窗口1和窗口2都是窗口3的子窗口。

非顶级窗口部件是子窗口部件。它们是它们的父窗口部件中的子窗口。你通常不能在视觉角度从它们的父窗口部件中辨别一个子窗口部件。在Qt中的绝大多数其它窗口部件仅仅作为子窗口部件才是有用的。(当然把一个按钮作为或者叫做顶级窗口部件也是可能的,但绝大多数人喜欢把他们的按钮放到其它按钮当中,比如QDialog。)

QWidget有很多成员函数,但是它们中的一些有少量的直接功能:例如,QWidget有一个字体属性,但是它自己从来不用。有很多继承它的子类提供了实际的功能,比如QPushButtonQListBoxQTabDialog等等。

 

我们有一个关于编程语言交流的QQ群:372130111

有兴趣的可以加一下