我真的很想知道我在开发的软件中是否遗漏了任何明显的东西。
大多数软件中经常缺少哪些您认为重要的用户界面功能?
撤消对代码来说很讨厌,但对最终用户非常有用。
保存所有/任何窗口的位置和大小,以便在程序重新启动时恢复它们。
从可用性专家 (Aza Raskin) 那里阅读有关撤消的这篇文章:当您的意思是撤消时,切勿使用警告。编码撤消并不是那么难:示例[1]、[1.5]、[2]。
键盘快捷键
UI中通常会遗漏什么?没有!(字面意思是空的空间)。这个问题最好问“可以取出什么?”。当您必须考虑您的 UI 还需要什么时,您已经走得太远了。留出空白是 UI 程序员需要做的事情。没有人喜欢特征爬行。
记住 KISS 规则。
这些是我经常发现做得不好甚至缺失的一些 UI 功能:
一个 API 和一个脚本语言,这样我就可以绕过 UI。
严重地。没有什么比通过一些重复的过程点击鼠标更乏味(而且容易出错)的了。
右键单击树视图和网格等内容的上下文菜单。
我们在工作中有一个记录管理应用程序,我必须不时使用它,而且他们没有右键单击树视图中的任何文档,因此您必须继续到屏幕底部将任务标记为完成 grrr,也没有键盘快捷键 grrr
用户界面一致性。
我知道我过去曾因遗漏印刷支持而感到内疚。我永远不会使用它,但我的一些用户会使用它。
好的设计。
在您的对话框中留出空间,因此如果您将其国际化,您就有空间容纳更长的单词(想想意大利语)和更大的字体(想想中文)。
我将添加一些尚未提及的自己:
在完成其他工作时可以保持打开状态的非模态表单。
能够一次查看多个窗口(而不是一次只显示一个的选项卡)
能够同时拥有单个窗口的多个视图,即拆分模式、窗格或实际的多个窗口到同一个对象中。
干净直观。
干净的图标。好的图标。有意义的图标。
我对应用程序中的许多图标感到非常失望——尤其是在 Windows 上 ;-)
对用户的实际考虑似乎经常被忽略:
能够使用拖放来自定义工具栏,并且能够删除/隐藏不需要的工具栏,而不会留下未使用的按钮,其唯一目的是恢复/取消隐藏它们。
当应用程序执行超过一秒钟的操作时冻结应用程序。
不向用户展示正在发生的事情,也不指出需要多长时间。
IMO,用户名和密码登录选项需要工作。我了解这些选项中的每一个都存在安全问题。每个应用程序的风险权衡是不同的,需要逐个应用程序进行评估。
经常被遗忘或实施不佳的功能包括:
有点太笼统的问题了。这将取决于应用程序做什么。我看到 gui 应用程序中经常缺少的一件事是一种简单的方法来撤消错误,不仅在您正在操作的对象中,而且在程序 UI 元素中。错误地关闭了一些浮动选项面板或工具栏,然后不知道启用的东西在哪里让我感到沮丧。是在windows下吗?还是在视图下?是这个吗?没有那个完全是为了别的东西。呸!它叫什么?
使用选项卡按钮循环浏览链接和字段。
左键单击拖动以突出显示,右键单击上下文菜单并选择复制突出显示的文本。在一些用 Java 编码的应用程序中发现缺失。
与其他窗口和屏幕板对齐的窗口。KDE 和 Winamp 做到了这一点,并且是最著名的。为什么一大堆其他应用程序和 DE 不这样做呢?