Delphi:建议用户界面建设中的想法

时间:2011-07-03 02:38:26

标签: delphi user-interface

我正在构建用户界面。我的课程将包括4个主要部分:

1)顶级菜单 - TMainMenu。窗口的顶部

2)主菜单 - TTreeView。一个窗口的左边。 TreeView的每个项目=对应TPageCotrol的TabSheet。

3)工作空间 - TPageControl。没有标签。左侧空间。

每个TabSheet都有自己的ToolBar和其他控件。这将是5个菜单(TreeView中的5个项目)= 5个TabSheets - >每个TabSheet上有5个ToolBars和其他控件。

它几乎看起来像这里(它可能是:TreeView作为主菜单; MainMenu作为顶级菜单;工作区 - 工具栏和其他控件): enter image description here

我想使用像这样的用户界面: enter image description here 用Top Menu和ToolBar表示CoolBar的位置(它适合我在每个TabSheet上使用5个ToolBars而不是1个ToolBar)。但经过讨论后,似乎无法使用MainMenu和ToolBar复制这个CoolBar。

我的问题:如何使用uTorrent的用户界面和Windows防火墙的用户界面构建高效的用户界面?

是否有很好的替代方案,构建UI的想法?如果你需要这4个零件,你将如何制作你的界面?

现在我有这样的事情: enter image description here

谢谢!

2 个答案:

答案 0 :(得分:1)

您的客户区必须有5个面板。

当您在左侧树视图中选择一个节点时,您需要调用

pnlInboundRules.BringToFront;

如果根据您选择的“标签”更新单个工具栏以及应该显示在其上的项目,这很困难。

您必须删除工具栏按钮,并为该“页面”添加新按钮。

答案 1 :(得分:0)

Ian建议使用面板,我会使用PageControl并在运行时将其选项卡TabVisible设置为false(*)。原因是在设计时管理起来要容易得多。当用户从树视图中选择一个项目时,激活相应的TabSheet ...

*)我实际上还没有用库存TPageControl这样做,所以我不记得它会这样工作,即它会激活TabSheet,它的TabVisible设置为false。可能是您必须将TabHeight设置为0或使用其他技巧在运行时隐藏选项卡。