【问题标题】:Making JFrame fullscreen in Ubuntu/Unity在 Ubuntu/Unity 中制作 JFrame 全屏
【发布时间】:2013-06-20 21:43:07
【问题描述】:

在 Ubuntu 中(实际上是统一的),我无法将 swing 的 JFrame 设为全屏。我尝试了很多用 stackoverflow 编写的方法,但没有一个对我有用。

我正在尝试开发一款游戏,我只需要在屏幕上看到我的游戏。但是,ubuntu 强制我在上面显示 Unity Launcher 和菜单栏(时钟、wifi 图标等)。

如何以全屏模式运行我的 Java 程序?这是我的代码:

import java.awt.GraphicsDevice;
import java.awt.GraphicsEnvironment;

import javax.swing.JFrame;

public class Starter extends JFrame {
    private static final long serialVersionUID = -2656706278597877008L;

    public static void main(String[] args) {
        new Starter();
    }

    public Starter() {
        super(UIConstants.FRAME_TITLE);
        setResizable(false);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setUndecorated(true);
        makeFullScreen();
        setVisible(true);
    }

    private void makeFullScreen() {
        GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
        GraphicsDevice device = env.getDefaultScreenDevice();
        device.setFullScreenWindow(this);
    }
}

而这个程序如下所示:

【问题讨论】:

  • 你有没有试过也调用 setSize: frame.setSize(screen.getDisplayMode().getWidth(), screen.getDisplayMode().getHeight());
  • 我是在GraphicsDevice device = env.getDefaultScreenDevice();之后写的但它没有用。
  • 我也从 OpenJDK 的 JRE 换成了 Sun JRE,没有任何改变。

标签: java swing ubuntu jframe fullscreen


【解决方案1】:

您不能删除全局菜单或在其上放置一个窗口,只需将主题更改为另一个主题,例如:lxde

【讨论】:

    猜你喜欢
    • 2012-02-16
    • 2021-03-05
    • 1970-01-01
    • 2012-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多