Как заблокировать фрейм в Java (GUI) - PullRequest
0 голосов
/ 19 мая 2011

Я запускаю проект Java и мне нужен способ полностью заблокировать фрейм.Под блокировкой я имею в виду:

  • Пользователи не могут закрыть его
  • Пользователи не могут его перетащить
  • Пользователи не могут его свернуть
  • Он находится в верхней части панели задач и всего остального (если не указано)

По сути, это полноэкранное поглощение.

Ответы [ 2 ]

3 голосов
/ 19 мая 2011

Попробуйте использовать полноэкранный эксклюзивный режим и посмотрите, работает ли он для вас.

1 голос
/ 20 мая 2011

Вы можете попробовать что-то вроде:

import javax.swing.*;
import java.awt.*;

public class FullScreenTest extends JFrame {

    private GraphicsDevice device;
    private boolean isFullScreen = false;

    public FullScreenTest(GraphicsDevice device) {
        super(device.getDefaultConfiguration());
        this.device = device;
        setTitle("Display Mode Test");
        setDefaultCloseOperation(EXIT_ON_CLOSE);
    }

    private void initComponents(Container c) {
        setContentPane(c);
        c.setBackground(Color.RED);
    }

    public void begin() {
        isFullScreen = device.isFullScreenSupported();
        setUndecorated(isFullScreen);
        setResizable(!isFullScreen);
        if (isFullScreen) {
            // Full-screen mode
            device.setFullScreenWindow(this);
            validate();
        } else {
            // Windowed mode
            pack();
            setVisible(true);
        }
    }

    public static void main(String[] args) {
        GraphicsEnvironment env = GraphicsEnvironment.
            getLocalGraphicsEnvironment();
        GraphicsDevice[] devices = env.getScreenDevices();
        FullScreenTest test = new FullScreenTest(devices[0]);
        test.initComponents(test.getContentPane());
        test.begin();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...