勇敢心资源网

当前位置:首页 > 百科 / 正文

对话框

(2020-02-24 07:31:48) 百科

对话框

在图形用户界面中,对话框(又称对话方块[1])是一种特殊的视窗, 用来在用户界面中向用户显示信息,或者在需要的时候获得用户的输入回响。之所以称之为“对话框”是因为它们使计算机和用户之间构成了一个对话——或者是通知用户一些信息,或者是请求用户的输入,或者两者皆有。

不同的用户互动使用不同的对话框。最简单的对话框是警告,它显示一个信息并且仅仅需要一个信息已读的回响(通常是单击'确定'按钮或“关闭”命令的对话框)。用来为一个操作提供警告和简单的确认,也可能包括程式终止或崩溃的提示,以及用户有意或无意的关闭动作。虽然对于有模式对话框来说,这是个经常性的互动模式,但是由于它被认为在防止非预期的破坏性操作上不够有效以及存在更好的替换方案[2]而遭到可用性专家的批评。显示一般提示信息的对话框,可以设计为提示气泡等形式来避免打断用户操作。

基本介绍

  • 中文名:对话框
  • 外文名:dialog box
  • 组成:对话框资源对话框类
  • 类型:模式对话框和无模式对话框
  • 交换验证:数据验证控制项

无模式对话框

这是一种非强制回应的对话框,用于向用户请求非必须资料。即可以不理会这种对话框或不向其提供任何信息而继续进行当前工作,所以视窗均可打开并处于活动状态或是获得焦点(人机互动热点)。一类无模式对话框表现为工具列,比如设定用于文字颜色的设定。查找/替换对话框可算是无模式对话框,也可以设计为工具列。

有模式对话框

这种对话框强制要求用户回应,否则用户不能再继续进行操作,直到与该对话框完成互动。这种对话框设计用于程式运行必须停下来,直到从用户获得一些额外的信息,然后才可以继续进行的操作,或可能只想确认使用者想要进行一项具有潜在危险性的操作。有模式对话框一般被视为坏的设计方案,因为以一种用户不喜欢看到方式出现,或是被习惯不去注意对话框提示的用户忽略,导致无法避免危险操作。
有模式对话框一般分为系统级和应用程式级。系统级对话框出现时,用户在完成与这个对话框互动之前不能进行其它操作,比如关机对话框、Windows Vista中的UAC。应用程式级的则只对它的母程式有所限制,但可能在允许运行多个实际的不同软体中有不同的表现:只限定其中的一个程式视窗使之无法操作或全部限定。

模式的定义

模式(计算机科学)根据杰夫·拉斯金在《Humane Interface》 (Page 42)中的定义:
人机界面对于跟定的动作(gesture)是模态的(modal) ,如果 (1)界面的当前状态不在 用户的注意之处;(2)依赖于系统的状态,界面对动作会从几种不同的回响执行中选择一种执行。
照此定义,界面是无模态的仅当用户完全感知当前状态。例如,状态的改变是用户故意造成的。 常见的模态的例子:
  • 键盘的大写锁(Caps Lock)、数字键盘锁(Num Lock)、滚动锁(Scroll Lock)。
  • 编辑器Vi的输入模式与用户模式

对话框与一般视窗的区别

从作业系统实现角度,对话框是特殊的视窗(window)。特殊之处不在于对话框会包含一些控制项(如按钮、编辑框、下拉列表框等)。因为一般的视窗也可以包含这些控制项。特殊性在于,对话框的这些控制项是用来与用户互动的,所以有一些约定的使用规则:
  • Tab Order:按下Tab键或上、下、左、右方向键,各个控制项依次获得输入焦点
  • 如果一个按钮获得输入焦点,这时按下空格键或者回车键,相当于滑鼠左键点击了该按钮
对话框的默认视窗过程在处理有关的按键讯息时,会自动解析处理上述使用规则。而一般视窗的视窗过程,显然没有这些预设的案件讯息处理。Windows作业系统提供了一个API函式IsDialogMessage,以支持对话框上述使用规则的自动实现。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net
搜索
随机推荐

勇敢心资源网|豫ICP备19027550号