使Java面板全屏

cla*_*amp 15 java swing fullscreen

你如何制作一个JComponent(面板,框架,窗口等)全屏,以便它还重叠屏幕上的所有内容,包括Windows启动栏?

我不想改变像bitdepth等图形设备的分辨率或任何东西,我只想重叠其他一切.

Ada*_*ski 18

查看本教程,描述Java的全屏模式API.

示例代码(取自教程).请注意,代码在a上运行,Window因此您需要JPanel使用Window(例如JFrame)嵌入您的代码才能执行此操作.

GraphicsDevice myDevice;
Window myWindow;

try {
    myDevice.setFullScreenWindow(myWindow);
    ...
} finally {
    myDevice.setFullScreenWindow(null);
}
Run Code Online (Sandbox Code Playgroud)


Von*_*onC 10

您可以尝试此页面中的一些代码,允许容器填充屏幕(因此它不是单个组件的解决方案,而是容器内的一组组件,如a JFrame)

public class MainWindow extends JFrame
{
  public MainWindow()
  {
    super("Fullscreen");
    getContentPane().setPreferredSize( Toolkit.getDefaultToolkit().getScreenSize());
    pack();
    setResizable(false);
    show();

    SwingUtilities.invokeLater(new Runnable() {
      public void run()
      {
        Point p = new Point(0, 0);
        SwingUtilities.convertPointToScreen(p, getContentPane());
        Point l = getLocation();
        l.x -= p.x;
        l.y -= p.y;
        setLocation(l);
      }
    });
  }
  ...
}
Run Code Online (Sandbox Code Playgroud)


San*_*dro 6

您需要使用以下API:http://java.sun.com/docs/books/tutorial/extra/fullscreen/index.html

全屏幕并不像制作大面板那么简单,您需要查看底层的OS图形.但是你的JPanel代码应该转换得很好.