【Qt学习笔记】窗口部件整理
关于Qt中窗口部件的学习
今天开始学习Qt的窗口部件,领略一下Qt的神奇之处,记得2012年的那年冬天,我还学Java呢,现在基本上和Java说再见了,不过对于嵌入式的开发Qt还是举足轻重的,我想趁着假期的时间,好好学习。考研之后发现一个问题,无论当初你学的有多明白,总会忘记,最好的方法就是将他们记录下来,甚至写下你当时的心情,如果有一天你需要了,回过头来看看,是一笔不错的财富。
1. QDialog类对话框
1.1 模态和非模态对话框
对于对话框,有模态(modal)和非模态(modeless)之分。模态对话框就是,对话框一出的时候,你不能点击对话框后面的面板了。非模态就是对话框出的时候,可以点击后面的面板。下面代码就是如何设定的。
#include "widget.h" #include "ui_widget.h" #include <QDialog> #include <QDebug> Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); // *建立一个QDialog对象,把这个对象设定在这个Widget里面 // *这个对象目标建立一个:模态对话框(不能点击其他应用部分) QDialog *dialog1 = new QDialog(this); dialog1->setWindowTitle("DIALOG-1"); // ** 调动dialog的方法,setModal(),给定参数为布尔类型的值 // ** 如果是true建立一个模态对话框,如果是false建立一个非模态对话框 dialog1->setModal(false); // ** 等效以下方法调动setWindowModality() // ** 给定参数: // ** 1. Qt::ApplicationModal ====> 阻塞整个应用程序(与setModal(true)效果同) // ** 2. Qt::WindowModal ====> 阻塞他的父窗口和祖先窗口和它的子窗口 // ** 3. Qt::NonModal ====> 不阻塞任何窗口 // dialog1->setWindowModality(Qt::ApplicationModal); // *建立一个QDialog对象的另一种方法 QDialog dialog2(this); dialog2.setWindowTitle("DIALOG-2"); dialog2.exec(); // 和show的区别是,这个需要关闭才能返回 // 而变量定义法和指针定义法区别在于,变量定义法会被释放掉。 // 如果利用dialog2.show();将会一闪而过! dialog1->setWindowModality(Qt::ApplicationModal); dialog1->show(); } Widget::~Widget() { delete ui; }
1.2 几种系统自带的标准对话框
今天学习了几个自带的标准对话框,颜色对话框、文件对话框、字体对话框、输入对话框、消息、进度和向导对话框。这些对话框都是我们使用软件能接触的,理解起来比较容易,我们也不是为了学习这个几个对话框而学习,积累对他们的知识的同时,了解一下Qt里边所包含的类,变量如何使用,同时复习一下C++语言的基本规则。
1.2.1 颜色对话框
对于颜色对话框,很好理解了。在Qt里面有个Color类,掌管颜色,如果按照字符串输出,会输出QColor(ARGB 1, 0.666667, 0, 0) 的
【Qt学习笔记】窗口部件整理的更多相关文章
- QT学习之窗口部件
对话框--QDialog 模态对话框与非模态对话框 模态对话框:就是相当于没关闭它之前,不能再和该应用程序的其他窗口进行交互(比如新建项目时弹出的对话框) 非模态对话框:可以与它交互,也可以与该程序中 ...
- PyQt(Python+Qt)学习随笔:窗口部件大小策略sizePolicy与SizeConstraint布局大小约束的关系
在<PyQt(Python+Qt)学习随笔:Qt Designer中部件的三个属性sizeHint缺省尺寸.minimumSizeHint建议最小尺寸和minimumSize最小尺寸>. ...
- Qt学习笔记-Widget布局管理
Qt学习笔记4-Widget布局管理 以<C++ GUI Programming with Qt 4, Second Edition>为参考 实例:查找对话框 包含三个文件,f ...
- QT学习之窗口右键菜单
#QT学习之窗口右键菜单 QWidget 及其子类都有右键菜单,主要因为其有两个与右键菜单相关联的函数: Qt::ContextMenuPolicy contextMenuPlicy() const ...
- qt学习笔记(五) QGraphicsPixmapItem与QGraphicsScene的编程实例 图标拖动渐变效果
应大家的要求,还是把完整的project文件贴出来,大家省点事:http://www.kuaipan.cn/file/id_48923272389086450.htm 先看看执行效果,我用的群创7寸屏 ...
- 大数据 -- kafka学习笔记:知识点整理(部分转载)
一 为什么需要消息系统 1.解耦 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束. 2.冗余 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险.许多 ...
- Qt图形测绘窗口部件介绍
Qt 图形测绘窗口部件,主要使用第三方窗口部件: 1.Qwt:http://qwt.sourceforge.net 开源免费 2.GraphPak: http://www.ics.com 收费 3. ...
- QT学习笔记(一)——Helloworld
QT学习笔记(一)--Helloworld 一.调试的基本方法: Log调试法 --在代码中加入一定的打印语句 --打印程序状态和关键变量的值 断点调试法: --在开发环境中的对应代码行加上断点 -- ...
- Qt学习笔记(2)-利用StackWidget实现选项卡式页面
学习笔记第二篇,利用Qt实现选项卡式的页面,效果如图1.1-图1.3所示.程序实现的功能是通过点击状态栏实现不同页面的切换,实际上Qt中自带有Tab选项卡式的控件,本文利用StackWidge实现类似 ...
随机推荐
- 关于移动app开发的一些不错的站点
1. http://www.androiddevtools.cn Android Dev Tools官网地址:www.androiddevtools.cn 收集整理Android开发所需的A ...
- 二、oracle数据库成功安装步骤 配置监听器
Oracle数据库使用监听器来接收客户端的连接请求,要使客户端能连接Oracle数据库,必须配置监听程序. 在安装Oracle数据库时,如果选择的是"创建和配置数据库",则安装 ...
- Docker的容器
容器是一个打包了应用和服务的环境,是一个轻量级的虚拟机,每一个容器都由一组特定的应用和必要的依赖库组成. 容器的管理操作 容器常见的命令:查看.创建.启动.终止和删除 创建容器 docker crea ...
- jquery选择器和基本语句
$("#aa"); //根据ID找 $(".aa"); //根据class找 $("div"); //根据标签名找 $("[id= ...
- html页面定位
对于css中的position:relative;我始终搞不明白它是什么意思,有什么作用? 对于position的其它几个属性,我都搞懂了 引用 static : 无特殊定位,对象遵循HTML定位规则 ...
- iOS代码签名理解
前言 做了几年iOS app coder了,对于证书的生成.使用流程烂熟于心,然而对于这套机制的原理却一直不甚理解.近来由于工作需要仔细研究了一下,特将自己的学习经验记录于此,以供大家学习指正. 问题 ...
- zjuoj 3773 Paint the Grid
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3773 Paint the Grid Time Limit: 2 Secon ...
- Python爬虫爬取豆瓣电影名称和链接,分别存入txt,excel和数据库
前提条件是python操作excel和数据库的环境配置是完整的,这个需要在python中安装导入相关依赖包: 实现的具体代码如下: #!/usr/bin/python# -*- coding: utf ...
- Jquery,jquery-cookie.js 做的点击记住用户名和密码!
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 箭头函数 Arrow Functions/////////////////////zzz
箭头符号在JavaScript诞生时就已经存在,当初第一个JavaScript教程曾建议在HTML注释内包裹行内脚本,这样可以避免不支持JS的浏览器误将JS代码显示为文本.你会写这样的代码: < ...