1

好吧,我需要一些关于使用哪些布局管理器将框架划分为两个区域的技巧,假设在框架的左侧将插入一个绘图 jpanel,在框架的右侧我将创建按钮和其他东西来控制它。那么我应该使用什么布局管理器以及它应该看起来如何?因为上次我需要类似的东西,我尝试使用框布局,然后使用边框布局,但我想我不知道如何正确使用它,因为结果不好。

任何人都可以帮忙吗?

4

2 回答 2

2

我会选择BorderLayout。将您的导航内容放在orderLayout.EASTBorderLayout.WEST(分别代表左右),看起来就像你想要的那样WEST。然后为您的内容指定一个 Border.CENTER 或不指定一个。

JPanel parent = new JPanel();
parent.setLayout(new BorderLayout());
JPanel navigation = createNavigation();
JPanel content = createContent();

parent.add(navigation, BorderLayout.WEST);
parent.add(content, BorderLayout.CENTER);  // or parent.add(content);

@Razvan 有一个很好的观点,特别是如果您希望该分隔线让用户手动控制两个布局的宽度。边框布局将使侧面板适合组件所需的最小尺寸,并将所有额外空间放在该CENTER区域中。

更多细节在这里:http ://docs.oracle.com/javase/6/docs/api/java/awt/BorderLayout.html

于 2012-09-18T17:29:08.210 回答
1

我认为 JSplitPane 是您想要和需要的。

它完全符合您的要求:将框架分成 2 个独立的区域,您可以在其中做任何您想做的事情。

由于这是您唯一的组件,我认为父框架的 FlowLayout 就足够了。

有关更多详细信息,请参见此处:http ://docs.oracle.com/javase/tutorial/uiswing/components/splitpane.html

于 2012-09-18T17:32:05.517 回答