java JFrame setSize

时间:2011-09-13 01:07:28

标签: java swing jframe

我正在加载一个显示公司徽标和信用等的JFrame,然后再启动主应用程序。我有一些问题。首先,我的新JFrame的大小永远不会被设置。当我在netBean下预览它时,JFrame看起来很好,但每次都变小了。我尝试使用新的构造函数和setSize(),但仍然无法正常工作。其次,JFrame加载速度非常慢。没有图像和一切都可以加载,JFrame保持空白至少五秒钟,真的很烦人。它与我放置图像文件的位置有什么关系吗? 非常感谢。

5 个答案:

答案 0 :(得分:3)

  

我正在加载一个显示公司徽标和信用等的JFrame,然后再启动主应用程序。我有一些问题。首先,我的新JFrame的大小永远不会被设置。当我在netBean下预览它时,JFrame看起来很好,但每次都变小了。我尝试使用新的构造函数和setSize(),但仍然无法正常工作。

如果没有看到你的代码就很难找出错误,但是说过,你对这是一个NetBeans生成的GUI的评论表明代码非常庞大,难以阅读和解释。出于这个原因和其他许多原因,我不喜欢使用NetBeans来生成GUI,特别是对于刚刚学习如何使用Swing的新手。我建议你用一些用户友好的布局管理器手工编写你的GUI代码,必要时嵌套JPanels嵌套。如果你这样做,你将在构建GUI时有一些更大的灵活性和控制力,你还将拥有可读和可调试的代码,你可以在这里发布我们的评估和帮助,如果它不能正常工作你。

  

其次,JFrame加载速度非常慢。没有图像和一切都可以加载,JFrame保持空白至少五秒钟,真的很烦人。它与我放置图像文件的位置有什么关系吗?非常感谢。

这听起来像是一个线程问题。我首先加载介绍GUI的图像,然后显示介绍窗口,然后在后台线程中加载程序所需的任何其他资源。

说完这一切之后,你可能想要研究一下使用Java自己的splash screen,因为这可能会让你自己想要拼凑起来。这些教程可以为您提供帮助(请点击上面的链接或here)。

答案 1 :(得分:0)

很多不清楚的问题描述虽然我想指出一些提示......

  

它与我放置图像文件的位置有什么关系吗?

如果您的意思是JFrame标题图片,那么您可以使用其setIconImage()方法

  

首先,我的新JFrame的大小永远无法设置。

这很奇怪:(因为你总是能像

那样编写代码
JFrame aFrame=new JFrame();
aFrame.setSize(x,y);

...控制你的画框比例

  

其次,JFrame加载速度非常慢。没有图像和   一切都可以加载,JFrame至少保持空白   五秒钟

它可能是由单线程重载引起但仍然要分析问题显示主类代码或其异常堆栈跟踪

  

在netBean下预览它,但每次都变小了

您使用什么组件来绘制徽标?你怎么画它?显示代码段

答案 2 :(得分:0)

您可以通过右键单击jFrame来设置大小     设置默认大小
(netbeans设计视图) 我希望这就是你想要的东西

答案 3 :(得分:0)

这可能对你有用吗?

    JPanel aa = new JPanel(new GridBagLayout());
    aa.setMaximumSize(new Dimension(500,500));
    aa.setMinimumSize(new Dimension(490,490));
    aa.setBorder(BorderFactory.createLineBorder(Color.black));

答案 4 :(得分:-1)

我打开了JFrame的属性对话框,并将“最小尺寸”字段设置为[500,500],但这不起作用。

为我工作的是选择“最小尺寸”属性右侧的“...”按钮。在“JFrame Mininumsize”对话框中如下:

  1. 设置下拉列表(使用以下设置表单最小大小属性:)=“自定义代码”
  2. 设置代码(Form.setMinimumSize())=“new Dimensiom(500,500)”