2012-11-15 66 views
1

我正在开发一个UI容器来容纳可以拖放到容器上的UI组件,还可以在容器内移动组件。这些部件具有各种尺寸。我在flex/actionscript中这样做,但我想这个问题适用于任何用户界面。是否有任何有布局算法的资源(书籍等)。任何指针都会对你有很大的帮助。用户界面布局算法

用户可以拖放项目。但是这些项目应该重新排列,以免重叠。例如。如果两个物品彼此相邻并且用户将第三个物品放在它们的顶部(在中间),则前两个物品应该移动到一旁以腾出空间用于第三个物品。 (与examples.adobe.com/flex3/devnet/dashboard/main.html类似,但项目大小不同)。

仪表板布局的源代码与假设一起使用,所有组件都具有相同的维度。我正在寻找的是一种布局不同尺寸组件的方法。

谢谢

+0

如果用户可以将物品拖放到任何位置;你期望你的布局算法做什么?你期望这个算法做什么? – JeffryHouser

+0

用户可以拖放项目。但是这些项目应该重新排列,以免重叠。例如。如果两个物品彼此相邻并且用户将第三个物品放在它们的顶部(在中间),则前两个物品应该移动到一旁以腾出空间用于第三个物品。 (类似于http://examples.adobe.com/flex3/devnet/dashboard/main.html,但项目大小不同) –

+0

听起来像您可能希望包括在您的问题中的重要信息。使用该仪表板/布局的源有什么问题? http://examples.adobe.com/flex3/devnet/dashboard/srcview/index.html – JeffryHouser

回答

0

我们在过去为客户做过这样的工作。你需要的是一个碰撞检测算法的实现。看到这个http://code.google.com/p/collisiondetectionkit/ 这里还有一篇关于代码项目的文章,它在C#中有一些布局实用程序,它可以实现这个功能,您可能会使用它:http://www.codeproject.com/Articles/23871/WPF-Diagram-Designer-Part-3。另外

+0

感谢球员的投入。如果我了解更多信息,我会检查上述链接并发回。 –