我正在研究java中的一个项目,我对jframe有一些问题。我只是在netbeans中创建一个jframe,这个框架有一个jlabel。我在formWindowOpened事件上调整此标签的大小如下。
private void formWindowOpened(java.awt.event.WindowEvent evt){
label.setSize(200, 200);
}
但问题是,当我调整大小或最小化或最大化我的jframe时,标签会自动调整大小为其默认大小。现在告诉我哪里出错了。
这是表单加载图片,其大小为200X200
:
这是调整帧的大小:
答案 0 :(得分:0)
Swing旨在与“布局管理器”一起使用。每个组件负责确定自己的“首选大小”。然后,布局管理器将使用此信息来确定添加到面板的每个组件的大小/位置。
调整框架大小时,将调用布局管理器,以便忽略setSize(...)语句,因为布局管理器将重置大小。
为什么要尝试为标签指定随机大小?标签的大小应由添加到标签的文本和/或图标确定。让布局管理器完成它的工作。
阅读Layout Managers上Swing教程中的部分,了解更多信息和工作示例。
答案 1 :(得分:0)
是的我理解场景是什么......但问题是我想在运行时调整面板大小...当我最小化或调整我的jframe然后再次出现这个问题.....我想要请告诉我解决方案,因为这对我来说非常重要.....