今天的内容对应的是<<QT学习之路2>>第13到17部分.

主要内容由思维导图总结

一,什么是QT对话框

二,什么是QT标准对话框

三,怎么样实现QT对话框数据传递

四,深入了解QT5信号槽新语法

五,一点终结

①模态对话框会阻塞当前线程,而非模态对话框则不会.所以要注意他们不同的实现方法(调用不同的函数).

模态对话框可以建立在栈上,而非模态则要建立在堆上.

还有注意建立在堆上的非模态对话框会不会发生内存泄漏的问题.

②QT是怎么实现对话框和主窗口的数据交替的?

对于模态对话框,因为其开启了无限事件循环,阻塞了代码,所以我们可以在exec()函数添加动作从对话框的对象获得数据.

还可以利用QDialog::exec()自己的函数返回值来进行数据交替.

而对于非模态对话框,因为QDialog::show()不会阻塞代码,用户来不及输入就会继续执行下面的代码.不过可以利用非模态对话框在关闭时会调用QDialog::accept()或者QDialog::

reject()或者更通用的QDialog::done()函数的特性.所以我们可以利用这一特性来传递数据.甚至我们还可以重写QDialog::closeEvent()函数来发出信号,再用conne函数捕捉信号就行了.

③QT的标准对话框

QT提供了丰富的内置对话框.这些对话框提供了不同的而又详尽的功能,用户如果想要创建某类对话框,只要调用该类就行了.

QT内置对话框分类:

QColorDialog:选择颜色;

  • QFileDialog:选择文件或者目录;
  • QFontDialog:选择字体;
  • QInputDialog:允许用户输入一个值,并将其值返回;
  • QMessageBox:模态对话框,用于显示信息、询问问题等;
  • QPageSetupDialog:为打印机提供纸张相关的选项;
  • QPrintDialog:打印机配置;
  • QPrintPreviewDialog:打印预览;
  • QProgressDialog:显示操作过程。

    ④通过实例学习QT内置对话框

    作者豆子先生在这里是以QMessageBox为例.

    QMessageBox用于显示消息提示,提供了不同的static函数来满足的需求.

    具体函数和函数功能可以查阅文档

    ⑤有关QT5信号槽新语法

    在QT5中,信号槽有了新的语法,具体如下.

    一,使用函数指针能获得编译期的类型检查

    二,允许有重载的信号

    三,槽函数可以带有默认参数

    具体这些语法有什么作用,我还没有搞懂=_=.等到搞懂了再写文章详细论述.

    

[记录]QT学习之路2学习第三天相关推荐

  1. QT学习之路2 学习笔记

    QT学习之路2 学习笔记 1.Qt 是一个著名的 C++ 应用程序框架.你并不能说它只是一个 GUI 库,因为 Qt 十分庞大,并不仅仅是 GUI 组件.使用 Qt,在一定程度上你获得的是一个&quo ...

  2. java学习之路---java学习的方法和java学习路线

    转载于: http://blog.csdn.net/zhangerqing 前段时间逛论坛,总会有很多新手很迷茫,问到:到底该怎么学好Java,这个问题很重要,尤其对于像我们这样大多数都是靠自学的人来 ...

  3. 如何学习3D建模的学习之路,学习这些成为高手吧

    一 学3d建模薪资很高,但是你有实力拿吗? 任何一个行业都分为四种人,3d建模行业也不例外,我把做3d建模的分成四种类型的人: 第一种:精英实力派大神. 第二种:有作为的公司领导. 第三种:踏踏实实工 ...

  4. java web 学习之路(学习顺序)建议

    第一步:学习HTML和CSS HTML(超文本标记语言)是网页的核心,学好HTML是成为Web开发人员的基本条件.HTML很容易学习的,但也很容易误用,要学精还得费点功夫. 随着HTML5的发展和普及 ...

  5. java rmi 是否 必要_Java学习之路-RMI学习

    Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用的应用程序编程接口.它使客户机上运行的程序可以调用远 ...

  6. Java学习之路-RMI学习

    Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用的应用程序编程接口.它使客户机上运行的程序可以调用远 ...

  7. 前端学习之路之CSS (三)

    Infi-chu: http://www.cnblogs.com/Infi-chu/ 创建CSS 有三种方法:外部样式表.内部样式表.内联样式. 优先级:内联样式>内部样式>外部样式表&g ...

  8. 我的jQuery学习之路_笔记(三)

    .html 和  .text 的异同 1, .html与.text的方法操作是一样的,只是在具体针对处理对象不同: 2, .html只能使用在HTML文档中,.text在XML和HTML文档中都能使用 ...

  9. epplus 速度_VSTO学习之路:学习使用Epplus(1)

    关于读取其它工作簿数据的几个方式的比较: 1.VBA的GetObject方法,会调用Excel程序打开工作簿(虽然不可见,但确实是打开的) 2.SQL,使用繁琐缺少灵活,不支持单元格样式的操作,也似乎 ...

最新文章

  1. 如何读懂MEMS惯性器件的精度指标
  2. Ubuntu系统安装搜狗输入法详细教程
  3. 深度学习中的随机种子
  4. WordPress添加固定位置的百度分享按钮
  5. Android 自定义控件 ViewPager头部指示器控件 ViewPagerBelowIndicator
  6. python从零开始系列连载_技术 | Python从零开始系列连载(一)
  7. gitpython git diff_Python全栈开发-git常用命令
  8. C语言#include还有些你不知道的事
  9. XP硬盘分区软件测试面试,怎样让WinXP系统自检并修复硬盘?
  10. 用指针交换两个数_LeetCode双指针系列
  11. 固态硬盘分为哪几种_固态硬盘分类简介和选择
  12. 电脑上有什么类似全能扫描王的软件?这4款扫描app1分钟帮你搞定几十张图片
  13. idea快速创建serilizableuid
  14. PS4 eye camera v2 ROS测试
  15. ASP.NET会话(Session) 转载自:寒羽枫(cityhunter172)
  16. java 建造者模式的实际应用场景
  17. 阿里云ID2物联网设备身份认证系统
  18. RB-tree深度探索
  19. JS逆向 | 某美食优惠聚合平台
  20. 技术揭秘 | 互联网广告黑产盛行,如何反作弊?

热门文章

  1. 引起质疑后360浏览器宣布下线VIP会员服务 继续面向个人用户免费提供
  2. 【网络基础】第30章 虚拟专网
  3. Nature:“我还有用!“凋亡细胞释放的代谢物充当组织信使
  4. 创建war包和部署war包,以及实施相关的工具和unix命令
  5. oracle中查询中文字段查询不出的问题
  6. 用PyQt5编辑 12306车票信息爬取程序
  7. stm32f407vet6MLX90640红外成像在正点原子2.8TFT显示屏 显示
  8. 关于斑马打印机开发的几种方式
  9. 了不起的盖茨比——那些年我们没有追到的女神
  10. ansible部署负载均衡