QT5自学教程(5)——显示窗口 在正式给出例子之前,我们首先要介绍几个重要的概念。这些概念还是蛮重要的,笔者愿与诸君一同进行回顾。 1. Q: 什么是 mainw indow ? A: mainw indow 也就是主窗口。简单的说主窗口就是进入程序后呈现全面功能的主要界面,其中包括了菜单,工具条,状态栏和其他一些元素。例如,进入 Qt 的界面就是一个主窗口。 2. Q:什么是 dialog? A:dialog 也就是对话框。在图形用户界面中,对话框是一种特殊的视窗, 用来在用户界面中向用户显示信息,或者在需要的时候获得用户的响应。之所以称之为“对话框” 是因为它们使计算机和用户之间构成了一个对话— — 或者是通知用户一些信息,或者是请求用户的输入,或者两者皆有。 3. Q:Model 对话框和 Modeless 对话框是指什么? A:严格地讲,只存在一种对话框,但是却存在不同的显示方式。即Model(模式或称模态)和 Modeless(非模式或称非模态)。 非模态对话框指的是:这是一种非强制回应的对话框,用于向用户请求非必须资料。即可以不理会这种对话框或不向其提供任何信息而继续进行当前工作,所以窗口均可打开并处于活动状态或是获得焦点(人机交互热点)。一类无模式对话框表现为工具栏,比如设置用于文字颜色的设置。查找/替换对话框可算是无模式对话框,也可以设计为工具栏。 模态对话框指的是:这种对话框强制要求用户回应,否则用户不能再继续进行操作,直到与该对话框完成交互。这种对话框设计用于需要一些额外的信息,然后才可以继续进行的操作,或可能只想确认使用者想要进行一项具有潜在危险性的操作。有模式对话框一般被视为坏的设计方案,因为以一种用户不喜欢看到方式出现,或是被习惯不去注意对话框提示的用户忽略,导致无法避免危险操作。 在了解了上面的一些概念之后我们将给出我们的例子,例子分为两个部分进行讲解。第一个部分中展示了创建一个主窗口并且在其中对部件进行布局的操作;第二部分则是窗口模态和非模态的展示。为了简洁起见,只会给出一份代码(其中实现了两部分的功能)。 Part I——建立主窗口以及设置其中的部件 1、建立一个 gui 界面(应该大家已经熟练了吧): 2、在主界面中建立一个菜单栏和对应的工具条: 3、在主界面中放入一个plainTextEdit: 4、在如下 mainwindow.cpp 的如下位置插入代码: 5、运行结果为: Part II——对话框的模态和非模态 1、 建立一个对话框类: 2、 对话框...