Qt学习之路2---窗口组件及窗口类型

窗口组件:

图形用户界面由不同的窗口和窗口组件构成;

Qt以组件对象的方式,构建图形用户界面。

组件的类型包括:

---容器类(父组件):用于包含其他的界面组件

---功能类(子组件):用于实现特定的交互功能

Qt中没有用父组件的*组件叫做窗口。

Qt学习之路2---窗口组件及窗口类型

Qwidget 继承自QObject和QPaintDevice

-Qwidget 能够绘制自己和处理用户的输入,也是Qt中所以窗口组件类的父类

-Qwidget类对象作为父组件或*组件使用

-Qt中的每一个窗口组件都是Qwidget

-Qwidget 是所有窗口组件的抽象

QLabel组件-QLabel 用于显示提示性的字符串

-QLabel 是功能性组件,一般需要父组件作为容器

-QLabel 可以作为窗口存在,但没有实际意义

Qt中可以根据需要定制窗口式样

-窗口类型

.Qt::Dialog---对话框类型

.Qt::Window---主窗口类型

.Qt::SplashSctrrn---启动画面类型

。。。

-窗口标志

.Qt::WindowStaysOnTopHint

.Qt::WindowContexHelpButtonHint

。。。

编程实战:

新建Qwidget工程如下图:

Qt学习之路2---窗口组件及窗口类型

参考代码:

 /*main.cpp*/

 #include "widget.h"
#include <QApplication> int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
w.setWindowTitle("我是继承自Qwidget的Widget");
w.show(); return a.exec();
}
 /*widget.cpp*/

 #include<QLabel>
#include "widget.h" Widget::Widget(QWidget *parent)
: QWidget(parent)
{
m_label =new QLabel(this);
m_label->setText("我是一个标签");
} Widget::~Widget()
{ }
 /*widget.h*/

 #ifndef WIDGET_H
#define WIDGET_H #include <QWidget>
class QLabel;
class Widget : public QWidget
{
Q_OBJECT
private:
QLabel *m_label;
public:
Widget(QWidget *parent = );
~Widget();
}; #endif // WIDGET_H

效果图:

Qt学习之路2---窗口组件及窗口类型

NOTE:

你可能现在会有很多疑问,但慢慢看下去,你的疑问就会慢慢被解决。O(∩_∩)O

Best Practices:

Qt中的帮助文档是你的第一手资料,它也是你遇到问题首先应该去查询的。但这也要求我们需要具备一定的英语阅读能力,刚开始吃力,坚持几个月就好,至少我是这样过来的,遇到不会的单词,只查词比你整句copy到翻译软件更能提高你的英语阅读水平。

上一篇:MT【47】求一道分式的最值


下一篇:StackExchange.Redis中文使用文档