2009-04-22 74 views
0

我有两类,其中一类可以有一个单亲的层次(你可以有孩子的多层次。)层次视觉设计

我研究如何将此信息显示给用户,它看起来像一个基本的香草树布局是最直观的方式去。但我想知道是否有人可以提出其他方法。

的要求是,

1)清楚地表明用户列表的父/子关系 2)允许用户方便地通过拖放操作或其他方法) 3走动项目(无论是)假设您有多个父母的分层数据,那么这将如何改变您的选择?

谢谢大家! - 凯文

回答

2

您的基本树形控件在展示层次关系方面取得了巨大成功。新手学习相对容易,现在已成为层级的事实标准。它非常适合编辑关系,特别是拖放。当分层深度随物体任意变化时(也就是说,对于树上的任何物体,可能有子孙,孙辈,曾祖孙等等,无限数量的“世代”),这也许是唯一可行的选择。 )。

树的主要替代方法是具有主 - 细节窗格的窗口。在这个设计中,一个窗格包含父对象,另一个包含子对象。选择一个父对象会填充子窗格及其子项。根据需要,您可以拥有大型窗格和超大型窗格,但是当层次结构中有少量固定层数时,主要细节通常效果最佳。用户通过拖放操作编辑父子关系,并在窗口内或窗口之间剪切/复制&子对象粘贴,类似于使用树形控件。

主 - 细节通常比在下列情况下的树木更好:

  • 你需要显示多个属性或者与每个对象的属性。例如,对于给定的项目对象,您不仅要列出每个团队成员的员工编号,还要列出他们各自的姓名,角色,职位,部门和照片。通过主细节,每个窗格可以作为表格或表格布局,让您可以展示很多关于每个对象的信息。树控件经常使用效率低下且易混淆的属性对话框来完成此操作。

  • 您需要细分儿童。例如,对于给定的Project对象,您希望将其团队成员与其Project Stage分开。通过主细节,您可以为单个父窗格创建两个或更多个子窗格,其中一个窗格列出团队成员,另一个窗格列出阶段。使用树形控件将不相关的子对象分开是很尴尬的。

  • 你有多对多的关系,每个孩子可能有多个父母,每个父母有多个孩子。例如,假设每个项目有多个员工(作为团队成员),但每个员工可以在多个项目上工作。您可以在父窗格中有项目,在子窗格中有团队成员,在父窗格中有员工,在子窗格中有项目分配,或者可以同时拥有两个窗口。当存在多对多关系时,树控件可能会使用户感到困惑,因为用户不希望同一个孩子处于多于一个家长之下。

0

你可以把一些视觉流程图样式设计,使其更具吸引力。你想走多远完全取决于你。这将帮助您与多位家长。

1

TreeGX是一种以不同于标准树的方式显示分层数据的甜美方式 - link is here

我使用组件来呈现搜索结果,虽然它不是免费的,但如果您想呈现独特的东西,它是值得的。

0

你的问题把你的设计问题看作是抽象的东西。不幸的是,并不那么简单 - 只要有一个完美的解决方案!

UI设计高度情境化。您必须考虑用户群体(即他们的需求,目标和期望)以及您试图支持的活动类型(即用户在浏览此树时究竟做了什么?他们的目标是什么?他们要使用你的应用每天或每年一次?等)。在你的情况下有效的方法在其他地方可能不适用。

当被告知“快速建立一个快速原型并在您的最终用户样本上进行测试”时,人们总是感到失望。它涉及进一步的工作,并且在一个典型的开发者的舒适区之外。但是,这是确保您的用户界面适合您的特定环境的唯一方法。