本章介绍创建Spreadsheet应用程序的主窗口
1.子类化QMainWindow
通过子类化QMainWindow可以创建一个窗口
图形用户界面(GUI)应用程序通常会使用很多的图片,最常见的为应用程序提供图片的方法是使用Qt的资源机制(resource mechanism)
使用Qt资源系统,必须创建一个资源文件,并且在识别该资源文件的.pro文件中添加一行代码。
RESOURCES = spreadsheet.qrc
当引用这些资源时,需要使用带路径的前缀:/(冒号斜线)的形式
2.创建菜单和工具栏
Qt通过“动作”的概念简化了有关菜单和工具栏的编程。一个动作(action)就是一个可以添加到任意数量的菜单和工具栏上的项
在Qt中,创建菜单和工具栏包括以下步骤:
创建并设置动作
创建菜单且把动作添加到菜单上
创建工具栏并且把动作添加到工具栏上
动作有一个加速键、一个父对象、一个图标、一个快捷键和一个状态提示。
3.设置状态栏
4.实现File菜单
5.使用对话框
如何在Qt中使用对话框,如何创建、初始化以及运行它们,并且对用户交互中的选择作出响应。
非模态窗口就是运行在应用程序中对于任何其他窗口都独立的窗口,可以进行窗口间的切换。
6.存储设置
Qsettings会存储应用程序中与特定平台相关的一些设置信息。
在windows系统中,使用的是系统注册表
在Unix系统中,把设置信息存储在文本文件中
7.多文档
单一应用程序处理多个文档
对File菜单进行改动
利用File->New创建一个空文档主窗口,而不是再次使用已经存在的主窗口
利用File->Close关闭当前主窗口
利用File->Exit关闭所有窗口
在每一个主窗口只提供一个文档的应用程序称为单文档界面(SDI)应用程序。
(MDI)只有单一主窗口,但可以对主窗口中央区域的多个文档窗口进行管理。
8.程序启动画面
类QSplashScreen会在应用程序的主窗口出现之前显示一个图片,可以再这个图片上显示一些消息,用来通知用户有关应用程序初始化的过程。通常,程序启动画面的代码会放在main()函数中,位于QApplication::exec()调用之前。