User interface 如何设计用于构建条件表达式的UI?
我需要开发一个用户界面,用于输入类似“如果x或(y和z),则执行a、b和c”的内容。要输入的数据本身已经相当复杂,如何在直观的用户界面中进行封装?是否总是这样的二进制逻辑(just或's,And's,Not's)?如果是这样的话,您可以让UI成为一个设计师,类似于设计电路逻辑时使用的UI。这是一篇好文章User interface 如何设计用于构建条件表达式的UI?,user-interface,User Interface,我需要开发一个用户界面,用于输入类似“如果x或(y和z),则执行a、b和c”的内容。要输入的数据本身已经相当复杂,如何在直观的用户界面中进行封装?是否总是这样的二进制逻辑(just或's,And's,Not's)?如果是这样的话,您可以让UI成为一个设计师,类似于设计电路逻辑时使用的UI。这是一篇好文章 我在构建输入福利扣除率的表单时使用了那篇文章中的思想。简而言之,他建议构建类似于疯狂Libs的表单(还记得小时候的那些书)。以下是我如何解决bug数据库问题的示例。这是十年前在linux机器上
我在构建输入福利扣除率的表单时使用了那篇文章中的思想。简而言之,他建议构建类似于疯狂Libs的表单(还记得小时候的那些书)。以下是我如何解决bug数据库问题的示例。这是十年前在linux机器上完成的,因此L&F有点像motif,但它显示了一般概念:
(来源:) 它的工作原理和你期望的差不多。您可以将“以下任何内容”更改为“以下所有内容”,后续行上的标签将从“或”更改为“和”。“IS”按钮可以更改为“IS NOT”以及“匹配模式”和其他一些选项 单击+/-按钮以添加其他条件。您可以创建逻辑组,让您可以执行“a或(b和c)”之类的表达式,但它的读起来仍然像一组英语句子 在您的情况下,您可能会有一个“做这些事情”部分,而不是“按订单”部分 如果您必须创建非常复杂的查询,那么使用它会很麻烦,但是如果您需要一个复杂的查询,那么您可能足够聪明,不需要这样的GUI。这是为临时用户设计的,用于简单的临时查询 如果我再做一次,我肯定会改变它的外观,但基本的力学原理非常好。下面是我对一个类似问题的回答: 我会把你的界面分成两部分:条件和结果 以下是条件接口的示例: 一些想法
- 界面一开始很简单
- 如果它变得复杂,那是因为用户一步一步地构建它
- 无需编辑或拖放-只需创建和删除分支
- 在本例中,条件是一个简单的下拉列表,但可能更复杂或可能被否定。基本上,这个界面允许您编写表达式
- 我认为如果可能的话,最好避免使用这种类型的接口