jsplitpanel内的jpanel的大小



我正在尝试将JsplitPane添加到我的项目中。我需要在JSplitPane的右面板内添加两个Jpanel

所以我做的是首先添加 Jpanel将其 panel1添加到右面板并设置BoxLayout.Y-AXIS,而不是在panel1中添加两个面板。

现在,在两个面板中,第一个面板具有BoxLayout,我希望该面板的宽度大小为panel1,但我无法做到。

有人知道该怎么做?

我试图将JsplitPane添加到我的项目中。我需要 要在JSplitPane的右面板内添加两个Jpanel

使用JSplitPane时,我们应该记住,它仅将窗格分为两个组成部分,即左右或或 top和botter 。因此,当我们再次想在JSplitPane的一侧添加多个组件(在我们的情况 right 中)时,最好使用 nesting split panes 。这意味着在拆分窗格中创建拆分窗格。

所以我做的是首先添加 Jpanel说它panel1到右面板 并设置BoxLayout.Y-AXIS,并在panel1中添加两个面板。

现在在两个面板中,第一个面板具有BoxLayout,我想要宽度 这个面板的大小为panel1,但我无法做到。

如果使用嵌套拆分窗格,则可能不必创建额外的父 JPanel您所说的 panel1。实际上,分裂窗格用于将窗格分为两个部分。因此,通过使用嵌套拆分窗格,您将创建另一个拆分窗格,而不是用panel1创建的内容,然后将两个子面板放入由New JSplitPane创建的两个嵌套的两个窗格中。因此,您也不必考虑尺寸问题。希望我能使您清楚并解决您的问题。

通过使用:

实现这一目标的简单方法

声明:

private JSplitPane jSplitPane1;
private JSplitPane jSplitPane2;
private JPanel jPanel1;
private JPanel jPanel2;

在构造函数中:

 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

相关内容

  • 没有找到相关文章

最新更新