QWidget是Qt中所有用户界面部件的基类,而QDialog是QWidget的一个子类,可以说QDialog在QWidget的基础上添加了自己的一些特殊功能,比如添加更种现成的按钮,设置模态和非模态等。在它的基础上还有各种格样的对话框,比如字体对话框、颜色对话框,警告对话框等等
QWidget是所有图形界面的基类 QMainWindow是一个提供了菜单、工具条的程序主窗口 QDialog是对话框、多用于短时间与用户的交互 QMainWindow和QDialog都是QWidget的子类。
QDialog 是最普通的顶级窗口。不被嵌入到一个父窗口部件的窗口部件被叫做顶级窗口部件
如果是顶级对话框,那就基于QDialog创建,如果是主窗体,那就基于QMainWindow
http://mobile.51cto.com/widget-290038.htm