【问题标题】:UI Design / Workflow: Changing same property on multiple objectsUI 设计/工作流程:更改多个对象的相同属性
【发布时间】:2023-04-07 17:22:01
【问题描述】:
我正在寻找一个通用的 UI 设计/工作流程来更改多个对象的相同属性。
假设我有一个名为 Person 的对象类。 Person 类有一个名为 City 的属性。我想在 UI 中的一个操作中选择 5 个 Person 对象并将所有 5 个对象的 City 属性更改为“New York”。
这并不难以编程方式完成,但我很难想出一个直观的 UI 工作流程。一种想法是使用类似于 iTunes 中使用的模式来更改有关多首选定歌曲的信息。我想提出另一个工作流程,因为这个想法已经在工作中被推翻了。
想法?想法?
编辑:我很欣赏到目前为止的答案。我想指出几点:
- 是否应该以某种方式显示以前的城市值?如果是这样,怎么做?或者,组合属性屏幕应如何通过颜色或其他指示符显示所有 City 值当前相同或不同?
- 应该如何显示布尔属性(例如 Person.IsAlive)?您是否使用三态切换/复选框?我们有一个包含三个值的下拉菜单?其他想法?
【问题讨论】:
标签:
user-interface
workflow
user-experience
【解决方案1】:
采用 iTunes 解决方案,放弃模式窗口并将其显示在您的应用程序中,否则您会显示单个条目的编辑视图。请记住,iTunes 也有一个用于编辑单个条目的模式窗口。
【解决方案2】:
我可能会使用相当标准的列表视图来执行此操作 - 允许多项选择 - 当您更改任何选定记录(例如下拉菜单)中的字段时选择了多个项目,它会将所有项目更新为相同的值.
有时您可能希望禁用此操作 - 因此在右侧有一个链接项目,以指示所有项目将一起更新。
【解决方案3】:
一种方法是拆分窗格设置,其中所有人员都在一侧,人员的所有属性都在另一侧。
但显然这对于编辑单身人士来说效果不佳。
【解决方案4】:
好吧,您确实需要手动挑选所有对象,因此多选似乎很自然。之后,您可以实现一个上下文菜单项(如果您已经有一个上下文菜单,请将其设为名为 Edit 的子菜单)并将所有现有属性作为子菜单项提供。像这样的:
当菜单项被选中时,提示用户输入新值,然后更新所有记录。
【解决方案5】:
如果此类字段的数量有限,您可以使用类似于 Word 或 Excel 中的“复制和粘贴格式”的范例。选择一个原型记录,右键单击,从菜单中选择“复制城市...”,然后粘贴其余部分。
但我更喜欢你原来的想法......
【解决方案6】:
我已经通过编辑向导完成了类似的事情。我选择 1-10000 不同的行,然后右键单击以显示编辑向导屏幕。显示的第一个面板能够设置多达 8 个不同的字段。我允许更改的每个字段都将应用于所有行。我在每个字段旁边都有复选框来选择要更改的字段。然后在选中时显示一个文本框以在旁边捕获新值。如果所有行都具有相同的值,则它们以灰色显示,例如,如果同一城镇的所有行都以灰色显示城镇,如果其中一行与第一行没有相同的城镇,则以橙色突出显示城镇字段并显示橙色消息'警告 - 有与第一个选定行不同的行'。我做了一个确认页面来检查用户想要继续,然后是一个完成按钮。然后在完成后重新显示行。
Rows to update : 3
..........Old Value... Change?....New Value
Field A ABC
Field B 123 Y 845
Field C BOB
[<Back] [Next>] [Finish]
希望对你有帮助