博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Qt学习之路2---窗口组件及窗口类型
阅读量:5311 次
发布时间:2019-06-14

本文共 1545 字,大约阅读时间需要 5 分钟。

窗口组件:

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

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

参考代码:

1 /*main.cpp*/ 2  3 #include "widget.h" 4 #include 
5 6 int main(int argc, char *argv[]) 7 { 8 QApplication a(argc, argv); 9 Widget w;10 w.setWindowTitle("我是继承自Qwidget的Widget");11 w.show();12 13 return a.exec();14 }
1 /*widget.cpp*/ 2  3 #include
4 #include "widget.h" 5 6 Widget::Widget(QWidget *parent) 7 : QWidget(parent) 8 { 9 m_label =new QLabel(this);10 m_label->setText("我是一个标签");11 }12 13 Widget::~Widget()14 {15 16 }

 

1 /*widget.h*/ 2  3 #ifndef WIDGET_H 4 #define WIDGET_H 5  6 #include 
7 class QLabel; 8 class Widget : public QWidget 9 {10 Q_OBJECT11 private:12 QLabel *m_label;13 public:14 Widget(QWidget *parent = 0);15 ~Widget();16 };17 18 #endif // WIDGET_H

效果图:

NOTE:

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

Best Practices:

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

转载于:https://www.cnblogs.com/yangguang-it/p/6390686.html

你可能感兴趣的文章
排序算法小结
查看>>
Android Core
查看>>
给C#学习者的建议 - CLR Via C# 读后感
查看>>
Recover Binary Search Tree
查看>>
【遇见时光】笔试-偶数最大距离-java
查看>>
【AC自动机】bzoj4327: JSOI2012 玄武密码
查看>>
jquery 判定checkbox是否选中
查看>>
FOJ Problem 2257 Saya的小熊饼干
查看>>
js分享2
查看>>
Java 实践:生产者与消费者
查看>>
笛卡尔积和卡氏积
查看>>
看图说话,jquery中的width innerwidth outerwidth
查看>>
[INS-30060]:Check for group existence failed
查看>>
javaIO详解、包含文件以及流操作
查看>>
如何使用Leangoo自动生成燃尽图
查看>>
[转]IOCP--Socket IO模型终结篇
查看>>
为什么需要ObjectDataProvider
查看>>
Eclipse(非J2EE版本)配置Extjs环境以及安装部署Tomcat
查看>>
网页中搜索框效果原理。
查看>>
SpringBoot实战 之 异常处理篇
查看>>