qt类总结地址

http://www.kuqin.com/qtdocument/

QWidget、QDialog及QMainWindow的区别

QWidget类是所有用户界面对象的基类。 窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己。每一个窗口部件都是矩形的,并且它们按Z轴顺序排列。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。

QMainWindow 类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。主窗口通常用在提供一个大的中央窗口部件(例如文本编辑或者绘制画布)以及周围 菜单、工具条和一个状态条。QMainWindow常常被继承,因为这使得封装中央部件、菜单和工具条以及窗口状态条变得更容易,当用户点击菜单项或者工具条按钮时,槽会被调用。

QDialog类是对话框窗口的基类。对话框窗口是主要用于短期任务以及和用户进行简要通讯的顶级窗口。QDialog可以是模态对话框也可以是非模态对话框。QDialog支持扩展性并且可以提供返回值。它们可以有默认按钮。QDialog也可以有一个QSizeGrip在它的右下角,使用setSizeGripEnabled()。

QDialog 是最普通的顶级窗口。一个不会被嵌入到父窗口部件的窗口部件叫做顶级窗口部件。通常情况下,顶级窗口部件是有框架和标题栏的窗口(尽管使用了一定的窗口部件标记,创建顶级窗口部件时也可能没有这些装饰。)在Qt中,QMainWindow和不同的QDialog的子类是最普通的顶级窗口。

如果是顶级对话框,那就基于QDialog创建,如果是主窗体,那就基于QMainWindow,如果不确定,或者有可能作为顶级窗体,或有可能嵌入到其他窗体中,则基于QWidget创建。
    当然了,实际中,你还可以基于任何其他部件类来派生。看实际需求了,比如QFrame、QStackedWidget等等。

最新文章

  1. 在SQL Server 2012中实现CDC for Oracle
  2. C- 流程控制(顺序结构,选择结构,循环结构)
  3. Vi个人学习使用心得
  4. regexp_substr在oracle9i的替换方案
  5. MVC开发 好的扩展套件(Visual Studio 插件)
  6. Java注解知识点摘抄
  7. BZOJ 1004 HNOI2008 Cards Burnside引理
  8. UIImageView 在切图规范的情况下不用设置frame
  9. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十三║Vue实战:Vuex 其实很简单
  10. informix 随笔
  11. Gradle构建工具从入门到精通(IDEA)
  12. .Net 多线程 (1) Task
  13. 最新版本elasticsearch本地搭建入门篇
  14. cxf简单例子
  15. code自动补全
  16. NYOJ 116 士兵杀敌 (线段树,区间和)
  17. FD 设置字体大小
  18. Laravel 支付宝异步通知 419报错
  19. 【原创】python requests 库底层Sockets处于close_wait状态
  20. Linux学习笔记:输入输出重定向 >>命令

热门文章

  1. 解决error: Your local changes to the following files would be overwritten by merge
  2. apache Storm之一-入门学习
  3. CS文件类头注释
  4. java程序后台报错java.net.SocketException: Too many open files
  5. mysql的引擎myisam和innodb的区别
  6. POJ 1661 Help Jimmy(递推DP)
  7. Nginx(四)-- 配置文件之location
  8. ZooKeeper(四)-- 第三方客户端 ZkClient的使用
  9. Python 数据类型:数值
  10. HTTP 请求过程