我个人遵循以下简单的规则:
我曾经从一位技术领导那里得到了一条具体的建议:
当你在对话框/表单中使用按钮、文本框、列表等控件时,请尽量保持它们之间的空间一致且对称。例如,尝试在所有方向上都使用相同的控件间距离,如果一组控件与另一组控件之间由于增加了空白而被分隔开,请尝试使这个空白与组内部控件之间的距离相同。例如,如果一个部分中所有按钮的间距为16像素,则请尝试将下一组控件放置在32、64、128像素等较大的间距处。
这样做会让人眼觉得更舒适,更容易解析出绑定于明显对称性的事物。
自从我开始使用这种方法以来,总能得到非常好的结果。我甚至返回重新制作旧GUI,惊讶地发现只是通过这种调整就产生了如此明显的提升。
编辑:
忘记提到了从上述方法中学到的重要一课:
当你按照这种系统排列所有控件时(特别是在重新设计旧的混乱GUI时),你可能会发现自己的空间不够用了,你的对话框需要扩大。到某个时候,你可能会感觉这个对话框变得太大了(例如,遮挡了相关的背景GUI或相关控件之间的距离太远)。这可能是一个很好的提示,表明你可能应该将对话框拆分成选项卡,将一些内容移动到菜单中,或者将其转换为向导式概念等。
这与控件间距离毫不相关,但涉及用户在任何给定时间内进行互动时越少越好的主题。有趣的是,当你开始把事情做好时,“水波”会扩散并有时会迫使你做更多的正确事情(有点像修复const正确性:p)。
我的首要建议是:从GUI开发人员的角度来看
如果你是从可用性角度来考虑的话
记住,用户的目标不是使用您的程序。他们的目标是其他事情,而您的程序只是帮助他们实现这个目标的工具。尽力让他们成功并感到满意。
不要更改默认颜色。这对于色盲的人非常重要。
我认为在这么短的篇幅中,不可能提供一些技巧来设计好的GUI界面(问题和“如何编写好程序”一样大)。但我可以提供一些有用的书籍指引:
尽可能少使用用户界面。
我认为我们忘记了计算机是信息“机器”,即它们的目的是为我们“工作”。
你有没有见过 iPhone 上的 Shazam?它几乎只有一个按钮。你按下它,把手机放在播放歌曲的扬声器旁边,大约 10 秒钟后它就会告诉你正在播放的歌曲。
非常有用,几乎没有用户界面。所有的艰苦工作都在底层进行。