本文介绍了setSize()不适用于JFrame的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

import javax.swing.JFrame;
import javax.swing.SwingUtilities;

class Demo
{
    JFrame jf;
    Demo()
    {
        jf=new JFrame("Demo");
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jf.setSize(5000,5000);
        jf.setVisible(true);
        System.out.println(jf.getSize());
    }
    public static void main(String[] args)
    {
        SwingUtilities.invokeLater(new Runnable()
        {

            @Override
            public void run()
            {
                new Demo();
            }
        });
    }
}

我使用 jf.setSize (5000,5000)用于JFrame,但之后getSize返回其他大小: java.awt.Dimension [width = 1386,height = 788] (我的屏幕分辨率是1366x768)我可以将帧大小设置为大于屏幕大小吗?可能这样的行为提供了一些框架属性,但我不知道它们。

I use jf.setSize(5000, 5000) for JFrame but after that getSize returns other size: java.awt.Dimension[width=1386,height=788] (my screen resolution is 1366x768) Can I set frame size greater than screen size? probably such behaviour is provided with some frame properties but I don't know about them.

推荐答案

尝试使用setPreferredSize而不是setSize。适用于我的情况(Ubuntu 12.04 + GNOME 3)。

Try using setPreferredSize instead of setSize. Works in my case (Ubuntu 12.04+GNOME 3).

这篇关于setSize()不适用于JFrame的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-05 14:36