gpt4 book ai didi

java - 使用 Miglayout 缩放 JPanel

转载 作者:行者123 更新时间:2023-12-01 17:00:52 24 4
gpt4 key购买 nike

我有一个大型 JPanel,可以将 0-4 个 JPanel 作为行添加到其中。
我的目标是让添加的面板缩放到要添加到的大面板的大小(取决于存在的面板数量)
1 个面板 = 面板的 100%
2 个小组 = 每个小组的 50%
3 个小组 = 每个小组的 33%
我的卡顿解决方案是将大面板分成 12 组行/单元格(可被 3 和 4 整除)

setLayout(new MigLayout("","[100%]","[8.3%][8.3%][8.3%][8.3%][8.3%][8.3%][8.3%][8.3%][8.3%][8.3%][8.3%][8.3%]")); 

然后根据添加的面板数量缩放其跨度

if(count == 1){
add(panel1, "cell 0 0, span 1 12, grow");
}
else if (count == 2){
add(panel1, "cell 0 0, span 1 6, grow");
add(panel2, "cell 0 6, span 1 6, grow");
...
...

这可行......但是非常丑陋,我确信一定有一种更简单的方法。

最佳答案

I'm open GridLayout, but not sure how to implement.

当你连 JDK 中提供的基本布局管理器都不知道时,为什么还要使用 MigLayout?

没有任何技巧。您创建一个面板,设置布局并将组件添加到面板。

JPanel parent = new JPanel( new GridLayout(0, 1) );
parent.add(child1);
parent.add(child2);
,,,

阅读 Layout Managers 上的 Swing 教程了解所有标准布局管理器的基础知识。

关于java - 使用 Miglayout 缩放 JPanel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61506872/

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