Swing: set JFrame content area size(Swing:设置JFrame内容区域大小)
问题描述
我正在尝试制作一个可用内容区域正好为 500x500 的 JFrame.如果我这样做......
I'm trying to make a JFrame with a usable content area of exactly 500x500. If I do this...
public MyFrame() {
super("Hello, world!");
setSize(500,500);
}
... 我得到一个全尺寸为 500x500 的窗口,包括标题栏等,我真的需要一个大小为 504x520 的窗口来说明窗口边框和标题栏.我怎样才能做到这一点?
... I get a window whose full size is 500x500, including the title bar, etc., where I really need a window whose size is something like 504x520 to account for the window border and titlebar. How can I achieve this?
推荐答案
你可以尝试几件事:1 - 一个黑客:
you may try couple of things: 1 - a hack:
public MyFrame(){
JFrame temp = new JFrame;
temp.pack();
Insets insets = temp.getInsets();
temp = null;
this.setSize(new Dimension(insets.left + insets.right + 500,
insets.top + insets.bottom + 500));
this.setVisible(true);
this.setResizable(false);
}
2- 或将 JPanel 添加到框架的内容窗格中,然后只需设置首选/最小尺寸将 JPanel 的大小改为 500X500,调用 pack()
2- or Add a JPanel to the frame's content pane and Just set the preferred/minimum size of the JPanel to 500X500, call pack()
- 2- 更便携
这篇关于Swing:设置JFrame内容区域大小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Swing:设置JFrame内容区域大小
基础教程推荐
- 在 Java 中创建日期的正确方法是什么? 2022-01-01
- 多个组件的复杂布局 2022-01-01
- 不推荐使用 Api 注释的描述 2022-01-01
- Java 实例变量在两个语句中声明和初始化 2022-01-01
- 如何在 JFrame 中覆盖 windowsClosing 事件 2022-01-01
- 大摇大摆的枚举 2022-01-01
- 从 python 访问 JVM 2022-01-01
- 验证是否调用了所有 getter 方法 2022-01-01
- 如何在 Spring @Value 注解中正确指定默认值? 2022-01-01
- Java Swing计时器未清除 2022-01-01
