java 设置组件填充_如何使Java Swing组件填充可用空间?

我似乎不能让我的Java Swing组件一起工作正确。

我想做的是,有一个JPanel填充JTabbedPane内的所有可用空间。目前,我的设置如下:

public class Gui extends JFrame {

private final EventBus eventBus = EventBus.getInstance();

private final ToolkitUtil toolkitUtil;

private final Menu menu;

private final InfoBar infoBar;

private final JTabbedPane pane;

...

private void buildLayout() {

GridBagConstraints gbc = new GridBagConstraints();

setJMenuBar(menu);

add(pane, BorderLayout.CENTER);

add(infoBar, BorderLayout.SOUTH);

pane.addTab("Plugins", new PluginPanel());

}

}

public class PluginPanel extends JPanel {

private final JPanel modelPanel;

private final JPanel editorPanel;

public PluginPanel() {

setLayout(new GridBagLayout());

modelPanel = new JPanel(new GridBagLayout());

editorPanel = new JPanel(new GridBagLayout());

buildLayout();

}

private void buildLayout() {

GridBagConstraints gbc = new GridBagConstraints();

modelPanel.setBorder(BorderFactory.createTitledBorder("Models"));

editorPanel.setBorder(BorderFactory.createTitledBorder("Editors"));

gbc.gridx = 0;

gbc.fill = GridBagConstraints.BOTH;

modelPanel.add(new JLabel("test label"), gbc);

add(modelPanel, gbc);

gbc.gridx = 1;

add(editorPanel, gbc);

}

}

这将创建一个窗口,这是我所需的大小(动态成比例的屏幕大小,不包括在上面的代码)。放置在中心的选项卡面板会展开以填充所需的所有空间,这正是我想要的。但是,我在标签面板中添加的面板只是其内容的大小。如果我添加标签或任何东西,它只会增长与组件一样大。我希望他们总是扩展到填充标签面板。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值