pack()
方法在 Java 应用中通常用于调整窗口(如 JFrame)的大小以适应其内容
import javax.swing.*; import java.awt.*; public class PackMethodExample { public static void main(String[] args) { SwingUtilities.invokeLater(() -> createAndShowGUI()); } private static void createAndShowGUI() { // 创建一个 JFrame,设置标题和默认操作 JFrame frame = new JFrame("Pack Method Example"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 创建一个 JPanel 并添加组件 JPanel panel = new JPanel(); panel.add(new JLabel("Name:")); panel.add(new JTextField(20)); panel.add(new JButton("Submit")); // 将 JPanel 添加到 JFrame 的内容面板 frame.getContentPane().add(panel); // 使用 pack() 方法调整 JFrame 大小以适应其内容 frame.pack(); // 设置窗口居中显示 frame.setLocationRelativeTo(null); // 设置 JFrame 可见 frame.setVisible(true); } }
在这个例子中,我们首先创建了一个 JFrame
,然后创建了一个 JPanel
并向其中添加了一些组件。接下来,我们使用 frame.getContentPane().add(panel)
将 JPanel 添加到 JFrame 的内容面板。最后,我们调用 frame.pack()
方法来调整 JFrame 的大小以适应其内容。这样,窗口将根据其内容自动调整大小,无需手动设置固定大小。