Java JFrame 内部大小
Java JFrame inner size
如何使内部尺寸为 500x500 像素?
或者我应该为 windows 硬编码 28px macOS 顶栏吗?
我的简单代码:
import javax.swing.JFrame;
public class Hello {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setSize(500, 500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setVisible(true);
}
}
不要设置 JFrame
大小。使用 JPanel
并将其添加到 JFrame 并设置 JPanel 的大小。
JFrame frame = new JFrame();
JPanel panel = new JPanel();
panel.setPreferredSize(new Dimension(500,500));
frame.add(panel);
frame.pack();
frame.setLocationRelativeTo(null); // centers on screen.
frame.setVisible(true);
如果要扩展 JPanel
,最好通过覆盖以下内容来设置大小:
@Override
public Dimenison getPreferredSize() {
return new Dimension(500,500);
}
在 JPanel(s)
而不是 JFrame
内进行大多数布局,尤其是绘画也被认为是最佳做法。
如何使内部尺寸为 500x500 像素?
或者我应该为 windows 硬编码 28px macOS 顶栏吗?
我的简单代码:
import javax.swing.JFrame;
public class Hello {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setSize(500, 500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setVisible(true);
}
}
不要设置 JFrame
大小。使用 JPanel
并将其添加到 JFrame 并设置 JPanel 的大小。
JFrame frame = new JFrame();
JPanel panel = new JPanel();
panel.setPreferredSize(new Dimension(500,500));
frame.add(panel);
frame.pack();
frame.setLocationRelativeTo(null); // centers on screen.
frame.setVisible(true);
如果要扩展 JPanel
,最好通过覆盖以下内容来设置大小:
@Override
public Dimenison getPreferredSize() {
return new Dimension(500,500);
}
在 JPanel(s)
而不是 JFrame
内进行大多数布局,尤其是绘画也被认为是最佳做法。