gpt4 book ai didi

java - 使用 GridLayout 时如何将组件的大小锁定在可调整大小的框架中?

转载 作者:行者123 更新时间:2023-12-02 10:00:27 26 4
gpt4 key购买 nike

我想要调整框架的大小,但保留 GridLayout 中组件的初始大小。我该怎么做?

初始大小。这是我想要保留的尺寸:

enter image description here

调整框架大小时,组件的大小也会发生变化。我不想要这个:

enter image description here

最佳答案

以下是mcve演示了使用 GridBagLayout 的解决方案 as proposed by MadProgrammer .
问题中包含这样的 mcve 可以让帮助变得更加容易,并且获得好的答案的机会也更高。

import java.awt.GridBagLayout;
import java.awt.GridLayout;
import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.Border;

public class SwingMain {

public static void main(String[] args) {

JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
frame.setLayout(new GridBagLayout()); //place desired content in a GridbagLayout
frame.add(new TestPane());
frame.pack();
frame.setVisible(true);
}
}

class TestPane extends JPanel{

TestPane() {

Border padding = BorderFactory.createEmptyBorder(10, 10, 10, 10);
setBorder(padding);
setLayout(new GridLayout(2, 2, 10, 10));
add(new JLabel("Celsius"));
add(new JTextField(10));
add(new JLabel("Fahrenheit"));
add(new JTextField(10));
}
}

enter image description here

关于java - 使用 GridLayout 时如何将组件的大小锁定在可调整大小的框架中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55671241/

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