gpt4 book ai didi

java - 使用 MiGLayout 设置 JPanel 的大小

转载 作者:行者123 更新时间:2023-11-29 10:19:53 25 4
gpt4 key购买 nike

我正在使用 MiGLayout 创建几个不同的 JPanel,但是我在调​​整其中一个的大小时遇到​​了问题。下图显示了我想要实现的目标:

-------------------------------------------------------
| |
| Panel 1 |
| |
-------------------------------------------------------
--------------------------- ---------------------------
| | | |
| Panel 2 | | Panel 3 |
| | | |
--------------------------- ---------------------------

我想要实现的关键是让面板 1 分布在其他两个面板上。我似乎已经实现了这种布局,但是我遇到了一个问题,即面板 1 的边框没有显示在我的图表中。我试过使用 setSize 方法,但它似乎不起作用。

这是我用来创建面板的代码(请注意我没有在面板中包含小部件):

    // Create Panel 1
JPanel panelOne = new JPanel();
panelone.setSize(600, 50);
panelOne.setBorder(BorderFactory.createTitledBorder("Panel 1"));
panelOne.setLayout(new MigLayout());

// Create Panel 2
JPanel panelTwo = new JPanel();
panelTwo.setBorder(BorderFactory.createTitledBorder("Panel 2"));
panelTwo.setLayout(new MigLayout());

// Create Panel 3
JPanel panelThree = new JPanel();
panelThree.setBorder(BorderFactory.createTitledBorder("Panel 3"));
panelThree.setLayout(new MigLayout());

// Add the panels to the main frame
mainFrame.add(panelOne, "span, wrap, align center");
mainFrame.add.add(panelTwo);
mainFrame.add.add(panelThree);

有人可以建议一种方法让边框显示在我的图表中吗?

最佳答案

试试这个:

mainFrame.getContentPane().setLayout(new MigLayout());
getContentPane().add(panelTwo);
getContentPane().add(panelThree, "wrap"); // Wrap to next row
getContentPane().add(panelOne, "dock north");

此外,请确保您将 GUI 元素添加到主框架的内容 Pane 而不是框架本身。

编辑 来自以下评论:您还可以使用 new CC.wrap()new CC.dockNorth()感谢@Andrew Thompson 和@Howard 的提示:)

关于java - 使用 MiGLayout 设置 JPanel 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8366890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com