Nano Hash - криптовалюты, майнинг, программирование

Как запрограммировать полноэкранный режим на Java?

Я бы хотел, чтобы мое приложение имело полноэкранный режим. Как это сделать проще всего, нужна ли для этого сторонняя библиотека или в JDK есть что-то, что уже предлагает это?

26.09.2008

Ответы:


1

Попробуйте API полноэкранного монопольного режима. Он был представлен в JDK в версии 1.4. Некоторые из особенностей включают в себя:

  • Полноэкранный эксклюзивный режим: позволяет приостановить оконную систему, чтобы можно было рисовать прямо на экране.
  • Режим отображения – состоит из размера (ширины и высоты монитора в пикселях), разрядности (количество бит на пиксель) и частоты обновления (частоты обновления монитора).
  • Пассивное и активное рендеринг: рисование в основном цикле событий с использованием метода рисования является пассивным, тогда как рендеринг в вашем собственном потоке активен.
  • Двойная буферизация и перелистывание страниц. Более плавное рисование означает лучшую воспринимаемую производительность и гораздо лучший пользовательский интерфейс.
  • BufferStrategy и BufferCapabilities — классы, которые позволяют рисовать на поверхностях и компонентах, не зная количества используемых буферов или метода их отображения, и помогают определить возможности вашего графического устройства.

В связанном руководстве есть несколько примеров полноэкранного эксклюзивного режима.

26.09.2008

2

Метод JFrame setUndecorated(true)

26.09.2008

3

Я сделал это с помощью JOGL, имея полноэкранный пользовательский интерфейс OpenGL для игры. Это довольно легко. Я считаю, что эта возможность была добавлена ​​​​в Java также с версией 5, но это было так давно, что я забыл, как это сделать (отредактируйте: см. ответ выше, как).

26.09.2008

4

Используйте этот код:

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

Убедитесь, что setUndecorated() стоит перед setVisible(), иначе это не сработает.

08.04.2012
  • Не работает. Полноэкранный в нижнем углу экрана и не может закрыть окно. 12.04.2018

  • 5

    Это действительно зависит от того, что вы используете для отображения своего интерфейса, то есть AWT/Spring или OpenGL и т. д.

    Java имеет API полноэкранного эксклюзивного режима — см. этот учебник от Sun. .

    26.09.2008
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..