QWidget QMainWindow QDialog 三者区别
来源:互联网 发布:西门子编程视频 编辑:程序博客网 时间:2024/06/10 03:36
Qt类是一个提供所需的像全局变量一样的大量不同的标识符的命名空间。通常情况下,你可以忽略这个类。QObject和一些其它类继承了它,所以在这个Qt命名空间中定义的所有标识符通常情况下都可以无限制的使用。
QWidget类是所有用户界面对象的基类。 窗口部件是用户界面的一个原子:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己的表现。每一个窗口部件都是矩形,并且它们按Z轴顺序排列的。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。
QMainWindow 类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。主窗口通常用在提供一个大的中央窗口部件(例如文本编辑或者绘制画布)以及周围菜单、工具条和一个状态条。QMainWindow常常被继承,因为这使得封装中央部件、菜单和工具条以及窗口状态变得更容易。继承使创建当用户点击菜单项或者工具条按钮时被调用的槽成为可能。你也可以使用Qt设计器来创建主窗口。
QDialog类是对话框窗口的基类。对话框窗口是主要用于短期任务以及和用户进行简要通讯的顶级窗口。QDialog可以是模式的也可以是非模式的。QDialog支持扩展性并且可以提供返回值。它们可以有默认按钮。QDialog也可以有一个QSizeGrip在它的右下角,使用setSizeGripEnabled()。
QDialog 是最普通的顶级窗口。不被嵌入到一个父窗口部件的窗口部件被叫做顶级窗口部件。通常情况下,顶级窗口部件是有框架和标题栏的窗口(尽管如果使用了一定的窗口部件标记,创建顶级窗口部件时也可能没有这些装饰。)在Qt中,QMainWindow和和不同的QDialog的子类是最普通的顶级窗口。
如果是顶级对话框,那就基于QDialog创建,如果是主窗体,那就基于QMainWindow,如果不确定,或者有可能作为顶级窗体,或有可能嵌入到其他窗体中,则基于QWidget创建。
当然了,实际中,你还可以基于任何其他部件类来派生。看实际需求了,比如QFrame、QStackedWidget等等。
小结:在Qt类中QWidget QMainWindow QDialog 三个类的区别都应该有所了解了吧?都是属于界面划分的,希望你在学习的过程中,本篇文章能够帮你解决问题。
*********************************************
QWidget是所有widget的基类
QDialog提供一个对话框
QMainWindow提供一个主窗口,包括菜单栏等
********************************************
QMainWindow是QWidget的派生类,由此可以得出两点:
* QMainWindow可以做的,你用QWidget都可以做(无非稍麻烦一点)
* 能用QWidget的地方,你就可以用QMainWindow。
QMenuBar、QToolBar都是QWidget的派生类,所以可以像QPushButton一样,可以任意放置。
题外:这几篇应该有你需要的多有东西:
http://blog.csdn.net/dbzhang800/article/details/6744650
http://blog.csdn.net/dbzhang800/article/details/6737540
http://blog.csdn.net/dbzhang800/article/details/6898971
***********************************************************************8
- QWidget QMainWindow QDialog 三者区别
- QWidget QMainWindow QDialog 三者区别
- QWidget QMainWindow QDialog 三者区别
- Qt中QWidget、QMainWindow、QDialog 三者区别
- QWidget、QMainWindow、QDialog区别
- QWidget、QMainWindow、QDialog区别
- QWidget、QMainWindow、QDialog区别
- QWidget、QMainWindow、QDialog区别
- QWidget,QMainWindow和QDialog区别
- QWidget、QDialog、QMainWindow的区别
- QDialog QFrame QWidget QMainWindow区别
- QWidget QMainWindow QDialog 之间的区别
- QWidget QMainWindow QDialog 之间的区别
- QWidget,QMainWindow和QDialog的区别
- QWidget QMainWindow QDialog 之间的区别
- QWidget,QMainWindow和QDialog的区别
- QWidget,QMainWindow和QDialog的区别 .
- QWidget,QMainWindow和QDialog的区别
- 使用Echarts生成图表
- 《C#程序设计》第二次作业:WinForm可视化设计
- 正则表达式 学习资料整理
- android:largeHeap="true"
- C语言面试题
- QWidget QMainWindow QDialog 三者区别
- Redis笔记整理2
- UNICODE_STRING的技术总结
- 计算机视觉领域的牛人博客、研究机构等的网页链接
- Can You Delete $ORACLE_HOME/.patch_storage Directory ? (文档 ID 403218.1)
- 营销QQ强制弹出会话窗口代码,并抓取访客QQ号码
- C++字符输入getchar()和字符输出putchar()
- Topdown Kit文档中文版-原创翻译(继续仙剑demo的周边部件)第2篇
- select from update row的实现