QMainWindow,QWidget和QDialog有什么区别?

时间:2010-07-21 11:41:54

标签: qt4 qt-creator qtwidgets

QMainWindow,QWidget和QDialog有什么区别?

2 个答案:

答案 0 :(得分:106)

QWidget是Qt中所有可绘制类的基类。任何基于QWidget的类都可以通过在没有父级时显示它来显示为窗口。

QDialog基于QWidget,但设计为显示为窗口。它将始终显示在窗口中,并具有使其与对话框上的常用按钮(接受,拒绝等)良好协作的功能。

QMainWindow是围绕主窗口的常见需求而设计的。它为菜单栏,状态栏,工具栏和其他小部件预定义了位置。对QDialog之类的按钮没有任何内置限制。

答案 1 :(得分:0)

QWidget :是QtWidgets模块中所有其他GUI元素的基类。它可以单独构成一个窗口,也可以是QLayout的一部分,也可以只是父子层次结构的成员。

QDialog :通常用于-令人惊讶! -需要用户输入时显示一个临时对话框。

QMainWindow :是一个便利类,可用作您的应用程序的主窗口。它具有一些不错的内置功能:状态栏,工具栏和菜单栏