窗口组件

来源:互联网 发布:java开源app 编辑:程序博客网 时间:2024/06/16 16:22

  在Qt应用程序源码目录中有.pro文件,开头有:

QT      += core gui

  意思是使用core和gui库。这个是Qt的默认配置,可以省略。如果要使用其他库,例如数据库,那么加上:

QT      += core gui sql

  头文件包含了所有的窗口组件,对位于应上述的gui(库)模块。Qt以面向对象的方式将组件看做是一个个对象而构成GUI图形界面。所有的组件可分为三类:
  (1) 容器类的父组件:用于包含其他的窗口组件
  (2) 功能类的子组件:用于实现交互功能的窗口组件
  (3) 容器类的子组件:用于包含其他窗口且具有交互功能的窗口组件
  如下图片(截图来自飞秋应用程序):
这里写图片描述
  (1) 红色框框表示容器类的父组件,它也是GUI程序的顶级组件。
  (2) 蓝色框框表示容器类的子组件,其间存放了多个标签。
  (3) 其他部分为功能类子组件,如文本框、标签、按钮等。

1. QWidget组件类

这里写图片描述
  QWidget继承了QObject类和QPaintDevice类,QObject是所有Qt对象的基类,QPanitDevice是Qt中所有可绘制的组件的基类。

  QWidget能够绘制自身和处理用户输入,它是所有窗口组件类的父类。QWidget抽象了所有窗口组件,一般QWidget类对象作为父组件或者顶级组件使用。

  QWidget类有两个构造函数:

QWidget ( QWidget * parent = 0, Qt::WindowFlags f = 0 )~QWidget ()

  当parent为NULL时,表示这是一个顶级组件,f为Qt::WindowFlags类型的参数:Qt::CustomizeWindowHint、Qt::WindowTitleHint等

2. QLabel组件类

  Label即标签,用于显示一个提示性的字符串,一般作为功能类的子组件,存在于一个容器类的父组件中。

3. QPushButton组件类

  Button即按钮,QPushButton用于接受用户的点击事件且能够显示提示性字符串,QPushButton一般作为功能类的子组件,存在于一个容器类的父组件中。

4. QLineEdit组件类

  QLineEdit即文本框,用于获取用于输入放入字符串,同理,QLineEdit一般作为功能类子组件,存在于容器类父组件中。

原创粉丝点击