首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SIze of Jpanel of

SIze of Jpanel of
EN

Stack Overflow用户
提问于 2016-12-23 08:47:47
回答 1查看 95关注 0票数 0

我试图将JsplitPane添加到我的project.Requirement中,我需要在JSplitPane的右面板中添加两个Jpanel

因此,我所做的是首先添加Jpanel,将其称为panel1,将其设置为右面板,并设置BoxLayout.Y-AXIS,然后在panel1中添加两个面板。

现在,在两个面板中,第一个面板有BoxLayout,我希望这个面板的宽度是panel1大小,但是我做不到。

有人知道怎么做吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-23 11:53:55

我试图将JsplitPane添加到我的project.Requirement中,我需要在JSplitPane的右面板中添加两个Jpanel

在使用JSplitPane时,我们应该记住,它只将窗格划分为两个组件,如左和右,或者顶部和底部。因此,当我们再次希望在JSplitPane的单个方面中添加多个组件时,最好使用嵌套拆分窗格。这意味着在拆分窗格中创建拆分窗格。

因此,我所做的是首先添加Jpanel,将其称为panel1,将其设置为右面板,并设置BoxLayout.Y-AXIS,然后在panel1中添加两个面板。 现在,在两个面板中,第一个面板有BoxLayout,我希望这个面板的宽度是panel1大小,但是我做不到。

如果使用嵌套拆分窗格,则可能不必创建额外的父JPanel (您所说的panel1 )。实际上,拆分窗格用于将窗格划分为两个段。因此,通过使用嵌套拆分窗格,您将创建另一个拆分窗格,而不是创建为panel1的窗格,然后将两个子面板放在由嵌套的新JSplitPane创建的两个窗格中。所以,你也不必考虑尺寸问题。我希望我能让你明白这解决了你的问题。

--通过使用:实现这一目标的简单方法

声明:

代码语言:javascript
复制
private JSplitPane jSplitPane1;
private JSplitPane jSplitPane2;
private JPanel jPanel1;
private JPanel jPanel2;

在Constructor中:

代码语言:javascript
复制
 jSplitPane1 = new JSplitPane();
 jSplitPane2 = new JSplitPane();

 jSplitPane1.setOrientation(JSplitPane.HORIZONTAL_SPLIT);
 jSplitPane1.setRightComponent(jSplitPane2);
 jSplitPane2.setOrientation(JSplitPane.VERTICAL_SPLIT);

 jSplitPane1.setTopComponent(jPanel1);
 jSplitPane1.setBottomComponent(jPanel2);

以上描述的方法是最简单的实现您想要的。但是,如果不嵌套拆分窗格,就可以使用多个拆分窗格,这可能不太方便。尽管如此,您还是可以看看Oracle的这篇旧文章:

https://community.oracle.com/docs/DOC-983539

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41298055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档