【问题标题】:How do I resize a window to full screen in Java?如何在 Java 中将窗口大小调整为全屏?
【发布时间】:2019-09-14 23:50:03
【问题描述】:

在过去的几个月里,我一直在为一个班级制作一款游戏,直到我尝试将它制作成一个 jar 文件时才意识到我遇到了问题。

当我从 netbeans 运行程序时,它或多或少都很好。

当我制作一个罐子时,窗口会变大,超出我的屏幕大小

所以我尝试在全屏模式下做一些事情,但它不会使内容全屏,只是窗口

我一直在假设第一个屏幕截图的情况下制作游戏,但是当我制作 jar 文件时,它运行得稍微大了一点,刚好足以切断屏幕底部(字体看起来也很糟糕,而且计时要快得多,但一次一个问题)。所以我想,嘿,让我们有某种全屏模式,环顾四周后,我最终得到了截图 3。理想情况下,我希望游戏全屏并让图像自动拉伸/收缩以适应窗口,但到目前为止我发现的每个解决方案都只会拉伸窗口本身,而不是其中的图像。

这是我必须构建的窗口:

private void initUI() {

        add(new Board());

        setExtendedState(getExtendedState() | JFrame.MAXIMIZED_BOTH);
        setUndecorated(true);
        setVisible(true);
        setResizable(false); 
        pack(); 
        setLocationRelativeTo(null); 
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    }

我尝试使用它使其全屏显示:

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setSize(screenSize.width,screenSize.height);

提前感谢您的帮助!

编辑:我尝试了下面的建议并最终得到以下改进,但如果我能以某种方式使边框变黑会更好:

【问题讨论】:

  • 将您的最后 2 张图片移动到使用 https 的网站,否则它们不能包含在问题中
  • 奇怪,我把它们都上传到同一个网站上......
  • imgur 中的第一个,另外两个是 tinypic
  • 我看到了,但我从来没有使用 imgur 上传图像,这很奇怪。我对所有这些都使用了 tinypic

标签: java image resize window


【解决方案1】:

我正在使用 Frame:

JFrame frame = new JFrame();
// set properties
frame.setSize(Toolkit.getDefaultToolkit().getScreenSize());
frame.setUndecorated(true);
frame.setVisible(true);

它对我有用。

【讨论】:

  • 这几乎解决了问题。至少 jar 和 IDE 运行之间的大小保持一致,因此这是朝着正确方向迈出的一步。它制作了一种白色背景并将游戏扔在上面,如果没有更好的解决方案,我想这很好。至少它是居中的,并且资产不会离开屏幕。如果我无法调整图像大小以适应屏幕,有没有办法至少将白色背景的颜色更改为黑色?
猜你喜欢
  • 2015-07-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-06
相关资源
最近更新 更多