当为应用程序创建对话框时,心里想着用户。这个消息给用户传达了有用的信息吗?它容易理解吗?命令按钮表示的选择明确吗?这选择适合给定的条件吗?记住,仅仅一个讨厌的消息框就会使用户对应用程序产生坏印象。
如果正在设计自定义对话框,尽量坚持用标准类型。如果与标准消息框布局相差太远,用户可能不会把它认作是对话框。
详细信息 关于对话框的详细内容,请参阅本章前面的对话框。
不用对话框的错误处理
当错误出现时不一定要打断用户。有时更可取的是不通知用户而用代码来处理错误,或者以不停止用户工作流程的方法来提醒用户。这个技术的很好的例子是 Microsoft Word 中的自动更正功能:如果普通单词拼错了,Word 自动修改它;如果不常用单词拼错了,在其下划一条红线提醒用户以后改正。
有大量的技术可以使用;哪些技术适用于应用程序应由自己决定。这里有几个建议:
1.在编辑菜单中添加撤销功能。对于删除等情况,与其用确定对话框来打断用户,还不如确保他们作出正确的决定并提供撤销功能以备他们以后改变主意。
2.在状态栏或图标上显示消息。如果错误不影响用户当前的任务,不要停止应用程序。使用状态栏或亮色警告图标来警告用户,当他们准备好后可以处理该问题。
3.改正问题。有时错误的解决办法很显然。例如,当用户试图存文件时磁盘已满,则在其他驱动器中检查系统寻找空间。如果空间可用,则保存该文件;在状态栏中显示一条消息告诉用户做了些什么。
4.保存消息等候处理。因为不是所有的错误都是紧要的,或要求马上注意的;考虑把这些记录到文件中,当用户退出应用程序时或其他方便的时候再把它们显示给用户。如果用户发生输入错误(如:把 Main St. 写成 Mian St.),记录它。添加Review Entries按钮和显示差异的函数,以便用户可以改正它们。
5.不要做任何事。有时错误并不重要,不足以成为警告的原因。例如,LPT1上的打印机的纸张没准备好这一事实,在准备打印之前并没有多大关系。等待,直到消息合乎当前的任务。
详细信息 关于错误处理技术的详细内容,请参阅第十三章调试代码与处理错误。
设计用户辅助模式
不论用户界面设计得多么好,有时用户总需要帮助。应用程序的用户辅助模式包括诸如联机帮助和打印出来的文档等东西;它也可以包括用户辅助设备,如工具提示、状态条、这是什么帮助以及向导。
像应用程序的其他任何部分一样,用户辅助模式设计应当在开始开发之前。模式的内容将随着应用程序的复杂程度与预期读者的不同而不同。
帮助与文档
联机帮助是任何应用程序的重要部分,它通常是用户有问题时最先查看的地方。甚至简单的应用程序也应该提供帮助。不提供它就好像是假定用户从来不会有问题。
在设计帮助系统时,记住它的主要目的是回答问题。创建主题名称与索引条目时尽量用用户的术语,例如,我如何格式化页面?比编辑,页格式菜单更容易找到主题。不要忘记上下文相关性;对大多数用户而言,如果他们按下 F1 键寻求一指定字段的帮助,却发现自己在内容主题上,则他们会感到受挫折。
基本概念的文档,不管是打印的和/或由压缩盘提供的,对所有的应用程序都是有帮助的,除了最简单的以外。它可以提供那些用简短的帮助主题难以传达的信息。至少,应该在 ReadMe 文件窗体中提供用户在需要时可以打印的文档。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)用户辅助设备
在用户界面中,有几种对用户提供辅助的技术。用 Visual Basic 在应用程序中添加工具提示、这是什么帮助、状态显示和向导是很容易的。这些设备中的哪些适用于自己的应用程序应由自己决定。
工具提示
当用户在用户界面上搜索时,工具提示(图 6.23)是一种向他们显示信息的好方法。工具提示是个小标签,当鼠标指针在控件上停留会儿即显示,通常包含此控件的功能描述。正常情况下工具提示与工具栏结合使用,它在界面的大多数部分也能很好工作。
大多数 Visual Basic 控件都包含用来显示工具提示的属性:ToolTipText。以下代码将对名为cmdPrint的命令按钮提供工具提示。
cmdPrint.ToolTipText = "Prints the current document"
像界面的其它部分一样,要确保此文本能明确地传达给用户的消息。
详细信息 关于工具提示的详细内容,请参阅《语言参考》的ToolTipText属性。
这是什么帮助
当用户选取这是什么帮助并单击控件上的这是什么光标,这是什么帮助提供了和弹出式帮助主题(见图 6.24 )的链接。这是什么帮助可以从工具栏按钮、菜单项或者对话框的标题栏上的按钮启动。
要从菜单或工具栏使这是什么帮助有效,请按照以下步骤执行:
1. 选取希望为其提供帮助的控件。
2. 在属性窗口中,选取 WhatsThisHelpID 属性。
3. 为相关的弹出式帮助主题输入上下文标识符号。
4. 为任何其他控件重复步骤 1 到步骤 3。
5. 选取窗体。
6. 在属性窗口中,设置该窗体的 WhatsThisHelp 属性为 True。
7. 在菜单或工具栏按钮的 Click 事件中,键入以下代码:
formname.WhatsThisHelp
当用户单击该按钮或菜单时,鼠标指针会改变为这是什么帮助指针。为了使在自定义对话窗体的标题栏上的这是什么帮助有效,设置该窗体的 WhatsThisButton 与 WhatsThisHelp 属性为 True。
详细信息 关于这是什么帮助的详细内容,请参阅《语言参考》的WhatsThisHelp 属性与WhatsThisButton 属性。
状态显示
状态显示也可用与工具提示差不多的方法来提供用户辅助设备。状态显示是提供那些不太适合工具提示的指令或消息的一种好方法。包括在 VisualBasic 的专业版与企业版中的状态条控件能很好地显示消息;Label 控件也能用作状态显示。
在状态显示中显示的文本可以用以下两种方法中的一种来更新:用控件或窗体的 GotFocus 事件,或者用 MouseMove 事件。如果想把显示用作学习设备,在 Help 菜单中添加一个项目来转换其 Visible 属性的开与关。
要添加状态显示,请按照以下步骤执行:
1. 在窗体中添加 Label 控件。
2. 选取希望为其显示消息的那个控件。
3. 在控件的 MouseMove(或 GotFocus)事件中添加以下代码:Labelname.Caption = "Enter the customer's ID number in this field"当鼠标移到该控件上时,这条消息将显示在此 Label 控件中。
4. 为任何其它的控件重复步骤 2 到步骤 3。
向导
向导是一种用户辅助设备,它引导用自己的实际数据一步一步地实现一个过程。向导通常用来提供任务专用辅助。它们帮助完成需要相当长的(而且令人讨厌的)学习过程的任务,它们给还没有成为专家的用户提供专家信息。
Visual Basic 的专业版与企业版包括了创建向导的工具:向导管理器。
详细信息 关于向导的详细内容,请参阅第四章工程的管理中的使用向导与外接程序。