Создание полноэкранного JFrame в Java: методы и примеры

Чтобы создать полноэкранный JFrameв Java, вы можете использовать несколько методов. Вот некоторые из них:

  1. Метод 1: использование GraphicsDevice.setFullScreenWindow():

    import javax.swing.*;
    import java.awt.*;
    public class FullScreenFrame extends JFrame {
    public FullScreenFrame() {
        setUndecorated(true); // Removes the frame decorations (title bar, close button, etc.)
        setExtendedState(JFrame.MAXIMIZED_BOTH); // Maximizes the frame to full screen
        GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().setFullScreenWindow(this);
    }
    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            FullScreenFrame frame = new FullScreenFrame();
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setVisible(true);
        });
    }
    }
  2. Метод 2: использование Toolkit.getScreenSize():

    import javax.swing.*;
    import java.awt.*;
    public class FullScreenFrame extends JFrame {
    public FullScreenFrame() {
        setUndecorated(true);
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        setSize(screenSize.width, screenSize.height);
        setLocationRelativeTo(null); // Centers the frame on the screen
    }
    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            FullScreenFrame frame = new FullScreenFrame();
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setVisible(true);
        });
    }
    }
  3. Метод 3: использование GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices():

    import javax.swing.*;
    import java.awt.*;
    public class FullScreenFrame extends JFrame {
    public FullScreenFrame() {
        setUndecorated(true);
        GraphicsDevice[] devices = GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices();
        GraphicsDevice primaryDevice = devices[0];
        primaryDevice.setFullScreenWindow(this);
    }
    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            FullScreenFrame frame = new FullScreenFrame();
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setVisible(true);
        });
    }
    }

Эти методы позволяют создать JFrame, занимающий все пространство экрана. Вы можете выбрать метод, который лучше всего соответствует вашим требованиям.