1. QApplication类
典型的主程序:
QApplication a(argc, argv);
//Initialization...
return a.exec();
- 一个应用程序只有一个QApplication(不论窗口数量)
- 退出应用程序:
a.exit(0);
- 关闭所有窗口
QApplication::closeAllWindoes();
- 关闭窗口后不退出应用程序:
QApplication::setQuitOnLastWindowClosed(false)
设置应用程序的整体风格:
a.setStyle(QStyleFactory::create("Plastique"));
2. 窗口:QMainWindow , QDialog , QWidget
QMainWindow:
大部分内容用central Widget
实现,典型的使用:
MainWindow w;
myCalendarWidget* cal = new myCalendarWidget;
w.setCentralWidget(cal);
w.show();
QDialog:
有两种“打开方式”: dialog.exec()
和dialog.show()
,区别在于:
exec()
执行得到的模式对话框必须完成这个对话框的交互才能访问其它窗口;通常用于需要得到返回值的地方。返回值有QDialog::Accepted
和QDialog::Rejected
。show()
得到的是非模式对话框,可以“绕过”