【问题标题】:Why is my JFrame size smaller than the size that I input into setPreferredSize()?为什么我的 JFrame 大小小于我输入到 setPreferredSize() 中的大小?
【发布时间】:2022-11-28 14:52:08
【问题描述】:

我试过运行以下代码。我调用的 GUI 构造函数来自一个扩展 JPanel 的类。

如您所见,我已经尝试过使用 pack 方法。

出现的窗口小于 500x500。我该如何解决?

import java.awt.Dimension;
import javax.swing.JFrame;

public class Main extends JFrame {

    public Main(){


        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setResizable(false);

        setPreferredSize(new Dimension(500, 500));

        setTitle("Chess");
        
        GUI gui = new GUI();
        setContentPane(gui);

        pack();

        setVisible(true);

    }



    public static void main(String[] args){

        Main main = new Main();
        main.repaint();
    }

已经尝试使用 pack()

【问题讨论】:

    标签: java swing


    【解决方案1】:

    因为框架尺寸包括框架边框、标题栏和页眉,它们特别大并且占用额外空间。设置 JPanel 的大小并将其添加到框架中,然后绘制组件并将其添加到面板中。并且不要忘记致电frame.pack()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-25
      • 1970-01-01
      相关资源
      最近更新 更多