窗口组件:

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

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

组件的类型包括:

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

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

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

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工程如下图:

参考代码:

 /*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

效果图:

NOTE:

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

Best Practices:

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

Qt学习之路2---窗口组件及窗口类型的更多相关文章

  1. Qt 学习之路 2(72):线程和事件循环

    Qt 学习之路 2(72):线程和事件循环 <理解不清晰,不透彻>  --  有需求的话还需要进行专题学习  豆子  2013年11月24日  Qt 学习之路 2  34条评论 前面一章我 ...

  2. Qt 学习之路 2(71):线程简介

    Qt 学习之路 2(71):线程简介 豆子 2013年11月18日 Qt 学习之路 2 30条评论 前面我们讨论了有关进程以及进程间通讯的相关问题,现在我们开始讨论线程.事实上,现代的程序中,使用线程 ...

  3. Qt 学习之路 2(66):访问网络(2)

    Home / Qt 学习之路 2 / Qt 学习之路 2(66):访问网络(2) Qt 学习之路 2(66):访问网络(2)  豆子  2013年10月31日  Qt 学习之路 2  27条评论 上一 ...

  4. Qt 学习之路 2(61):使用 SAX 处理 XML

    Qt 学习之路 2(61):使用 SAX 处理 XML  豆子  2013年8月13日  Qt 学习之路 2  没有评论 前面两章我们介绍了使用流和 DOM 的方式处理 XML 的相关内容,本章将介绍 ...

  5. Qt 学习之路 2(59):使用流处理 XML

    Qt 学习之路 2(59):使用流处理 XML 豆子 2013年7月25日 Qt 学习之路 2 18条评论 本章开始我们将了解到如何使用 Qt 处理 XML 格式的文档. XML(eXtensible ...

  6. Qt 学习之路 2(57):可视化显示数据库数据

    Qt 学习之路 2(57):可视化显示数据库数据(skip) 豆子 2013年6月26日 Qt 学习之路 2 26条评论 前面我们用了两个章节介绍了 Qt 提供的两种操作数据库的方法.显然,使用QSq ...

  7. Qt 学习之路 2(52):使用拖放

    Qt 学习之路 2(52):使用拖放 豆子 2013年5月21日 Qt 学习之路 2 17条评论 拖放(Drag and Drop),通常会简称为 DnD,是现代软件开发中必不可少的一项技术.它提供了 ...

  8. Qt 学习之路 2(31):贪吃蛇游戏(1)

    Qt 学习之路 2(31):贪吃蛇游戏(1) 豆子 2012年12月18日 Qt 学习之路 2 41条评论 经过前面一段时间的学习,我们已经了解到有关 Qt 相当多的知识.现在,我们将把前面所讲过的知 ...

  9. Qt 学习之路 2(30):Graphics View Framework

    Qt 学习之路 2(30):Graphics View Framework 豆子 2012年12月11日 Qt 学习之路 2 27条评论 Graphics View 提供了一种接口,用于管理大量自定义 ...

  10. Qt 学习之路 2(28):坐标系统

    Qt 学习之路 2(28):坐标系统 豆子 2012年11月25日 Qt 学习之路 2 59条评论 在经历过实际操作,以及前面一节中我们见到的那个translate()函数之后,我们可以详细了解下 Q ...

随机推荐

  1. python之函数用法setattr(),了解即可

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法setattr(),了解即可 #http://www.cnblogs.com/hong ...

  2. 微信小程序的零食商城

    概述 这是一个微信小程序的商城应用,功能包括了首页.分类.购物车.个人中心.商品列表.商品详情.订单.地址管理等 详细 代码下载:http://www.demodashi.com/demo/10353 ...

  3. HDUOJ--------(1312)Red and Black

    Red and Black Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) To ...

  4. Python知识总结(二)

    一.import和reload和__import__ import是一个关键字,只引入一次 reload是一个函数,参数为一个字符串,它总是会重新引入 __import__是一个函数,与import关 ...

  5. SpringBoot定时器

    使用Component注解注解一个类,这个类就变成了一个组件.组件可以有很多不同的特性,比如Scheduled注解为组件的某个函数添加了定时的特性. @Component public class M ...

  6. Chart.js 学习笔记

    1.引入Chart.js 文件 <script src="Chart.js"></script> 2.在html中创建画布 <canvas id=&q ...

  7. OAF_Oracle Application Framework基本知识点(概念)

    2014-02-06 Created By BaoXinjian

  8. 上传一个 游戏server架构图

  9. sureface 屏幕残影问题官方解决方案 - 卸载显卡驱动

    您进入桌面,左下角微软图标(单击右键),选择设备管理器,点开“显示适配器”前面的小三角,找到“Intel(r) hd gRAPHICS 520”, 单击右键卸载,卸载的时候不要勾选“删除此设备的驱动软 ...

  10. django1.8读书笔记模型高级进阶

    一.访问外键和多对多值 例如:模型类定义如下 from django.db import models class Publisher(models.Model): name = models.Cha ...