gpt4 book ai didi

java - GridBagLayout 最大单元格大小

转载 作者:行者123 更新时间:2023-11-30 04:41:28 25 4
gpt4 key购买 nike

可以限制 GridBagLayout 中的单元格大小(高度/宽度)吗?

我的意思是..我有两行具有相同的权重x = 0.5,但是当我调整大小时,我不希望第一行高于300像素。

此外,如果它小于 300,我不希望它不占用任何可用空间。(将weightx 设置为0)。在单元格中设置组件的最大尺寸是没有意义的,因为当我调整大小时,所有可用空间都被组件填充(组件被调整大小以填充单元格)。

最佳答案

据我所知,GridBagLayout 无法完成此操作。幸运的是还有其他选择。 MiGLayout工作方式与 GridBagLayout 类似,但更强大且更具表现力。它也是基于单元格的,可让您设置单元格以及单元格行/列的最小、首选和最大大小

虽然我建议您制定自己的解决方案,因为这个解决方案过于依赖于我喜欢的行约束,并且基于对您想要的内容的一些假设,但这里有一个示例:

JPanel panel = new JPanel(new MigLayout("flowy, fillx, filly", "[fill, grow]", "[fill, 0:100:300][fill, 0:100:max(100%,300)]"));
JPanel redPanel = new JPanel();
redPanel.setBackground(Color.RED);
JPanel bluePanel = new JPanel();
bluePanel.setBackground(Color.BLUE);

panel.add(redPanel);
panel.add(bluePanel);

JFrame frame = new JFrame();
frame.add(panel);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);

关于java - GridBagLayout 最大单元格大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12176999/

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