QT中QWidget、QDialog及QMainWindow的区别
2015-07-24 17:26
344 查看
QMainWindow 类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。主窗口通常用在提供一个大的中央窗口部件(例如文本编辑或者绘制画布)以及周围 菜单、工具条和一个状态条。QMainWindow常常被继承,因为这使得封装中央部件、菜单和工具条以及窗口状态条变得更容易,当用户点击菜单项或者工具条按钮时,槽会被调用。
QDialog类是对话框窗口的基类。对话框窗口是主要用于短期任务以及和用户进行简要通讯的顶级窗口。QDialog可以是模态对话框也可以是非模态对话框。QDialog支持扩展性并且可以提供返回值。它们可以有默认按钮。QDialog也可以有一个QSizeGrip在它的右下角,使用setSizeGripEnabled()。
QDialog 是最普通的顶级窗口。一个不会被嵌入到父窗口部件的窗口部件叫做顶级窗口部件。通常情况下,顶级窗口部件是有框架和标题栏的窗口(尽管使用了一定的窗口部件标记,创建顶级窗口部件时也可能没有这些装饰。)在Qt中,QMainWindow和不同的QDialog的子类是最普通的顶级窗口。
如果是顶级对话框,那就基于QDialog创建,如果是主窗体,那就基于QMainWindow,如果不确定,或者有可能作为顶级窗体,或有可能嵌入到其他窗体中,则基于QWidget创建。
当然了,实际中,你还可以基于任何其他部件类来派生。看实际需求了,比如QFrame、QStackedWidget等等。
注:摘自
http://www.kuqin.com/qtdocument/qwidget.html#details
http://www.kuqin.com/qtdocument/qmainwindow.html#details
http://www.kuqin.com/qtdocument/qdialog.html
相关文章推荐
- illegal instruction qt
- Qt MVC设计模式:子类化抽象模型的方法
- Qt使用虚拟机windows共享目录调用第三方库编译不成功
- Qt libqevdevtouchplugin.so插件的改写
- 学习qt遇到不显示菜单栏
- Qt5 设置QLabe中字体的颜色
- Qt网络编程之一
- Qt下写日志文件的函数
- QT分析之网络编程(一)
- qt QLineEdit 左侧带自定义图标类
- 3. QT窗体间值的传递(续)
- pyqt的多Button的点击事件的槽函数的区分发送signal的按钮。
- qt在开发板上运行的环境编译的搭建
- Qt开源的压缩包的提取
- QT—QTextEdit控件显示日志
- Qt 中响应回车事件 keyPressEvent
- QT定制有标题的扁平化下拉框控件
- QT中调用JAVA代码
- QT中的.pro文件
- QT QSS 使用