哪种方法更好,为什么。
答案 0 :(得分:7)
而不是是/否问题,请使用自定义按钮的问题:
The file blah.txt has been modified. Would you like to save or discard it?
+------+ +---------+ +--------+
| Save | | Discard | | Cancel |
+------+ +---------+ +--------+
答案 1 :(得分:3)
您应该为正在开发的平台寻找UI指南(搜索“人机界面指南”或“外观设计指南”)。如果它们存在,您应该关注它们,以便您的应用程序可能符合用户的期望。例如,Apple在Mac OS X上的这种情况下有specific guidelines。
此特定方案的典型建议是不要使用“是”或“否”按钮,而是使用描述其执行操作的按钮。例如,您可以显示如下消息框:“文档a.txt已被修改。保存更改?”使用“保存”,“不保存退出”和“取消”按钮。这使用户清楚每个按钮将执行的操作。
答案 2 :(得分:2)
作为其主要目标之一,您的应用程序应该永远不会丢失用户的数据。实现这一目标的一种方法是定期保存用户完成的工作,无需用户干预。
这是大多数人在现实生活中习惯的范例。当人们用笔记本写作时,他们并不期望报纸会问“你是否希望我真正将这些改变提交给纸张?”,他们希望这些改变是永久性的,除非他们选择明确地将它们扔掉。
所以,我甚至不会问这个问题,实现一个强大的撤销功能,只是询问(可能在工作会话开始时)一个新的保存文件名,如果它是一个新工作,连续保存并退出
这些想法来自非常有启发性的Why Software Sucks... And What You Can Do About It。
答案 3 :(得分:1)
MsgBox(“文件已被修改。你想在退出之前保存吗?”)
使用以下选项
The file xxx.txt has been modified.
Do you wish to save before quitting?
+---------+ +--------+ +-------------+
| Discard | <---- SPACING ----> | Cancel | | Save & Quit |
+---------+ +--------+ +-------------+
永远不要将丢弃放在其他按钮之间,因为这会在错过点击时出现问题。 http://www.codinghorror.com/blog/2010/03/the-opposite-of-fitts-law.html
答案 4 :(得分:1)
我个人认为重要的是将焦点设置为相当于取消的按钮。我认为很多用户已经习惯了这种提示,只需按下Enter就可以不读取对话框中的内容。当他们这样做时,我认为在大多数情况下,最好是安全地取消它而不是做出承诺。
答案 5 :(得分:0)
我讨厌被问到我是否想亲自保存。如果我需要,我可能会这样做。如果我忘记了,那么我使用的大多数程序都有自动保存功能。
寻求用户界面指南的想法很好,但我同意建议用户干预最少的人。他在纸上书写的比喻击中了头上的钉子。如今,许多程序都带有某种版本控制。