0

我正在尝试编写一个我想要全屏的 JFrame 应用程序(我并不是说最大化),但是应用程序 UI 非常小(大约 500x600)是否有可能我可以将全屏 JFrame 的分辨率设置为 1024x768可以在 Linux 和 Windows 上运行吗?我只是使用这段代码:

setUndecorated(true);
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setBounds(0,0,screenSize.width, screenSize.height);

但是我找不到修改分辨率的方法,它仍然显示任务面板。

我正在 Linux Mint 14 KDE 上的 Eclipse 中开发。提前致谢!

编辑 :我使用这段代码更进一步:

                setUndecorated( true );
                setResizable( false );
                setAlwaysOnTop( true );
                setVisible( true );
                GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
                DisplayMode dm = new DisplayMode(1024, 768, 16, DisplayMode.REFRESH_RATE_UNKNOWN);
                vc = env.getDefaultScreenDevice();
                vc.setFullScreenWindow(this);
                if (dm != null && vc.isDisplayChangeSupported()){
                    try{
                        vc.setDisplayMode(dm);
                    }catch (Exception e){
                        System.exit(0);
                    }
                }

该代码位于我的扩展 JFrame 的类的构造函数中。但是它不会改变分辨率,它只是以默认的 1080p 运行。

4

2 回答 2

1

查看Full Screen Exclusive Mode API以获得完整的详细信息,特别注意显示模式

于 2013-05-05T20:54:47.507 回答
1

有没有一种可能的方法可以将全屏 JFrame 的分辨率设置为 1024x768,这将在 Linux 和 Windows 上运行。

如果您希望您JFrame在整个屏幕上显示,那么您可以使用这个:

setUndecorated(true);
setExtendedState(JFrame.MAXIMIZED_BOTH);
toFront();
于 2013-05-05T18:49:53.090 回答