Я скоро буду делать проект, и мне придется использовать в нем полноэкранный режим.
Он будет рисовать графику в окне. Было бы удобно использовать JFrame или что-то подобное.
Не знаю, какое будет окончательное разрешение экрана. Подскажите пожалуйста, будет ли масштабироваться графика автоматически?
JFrame jf = new JFrame();
jf.setSize(1650,1080);
//make it fullscreen;
//now is everything is going to be rescaled so it looks like the original?
java
swing
fullscreen
Йода
источник
источник
Ответы:
Добавить:
источник
frame.setUndecorated(true);
сделает его действительно полноэкранным.DisplayMode.BIT_DEPTH_MULTI
иDisplayMode.REFRESH_RATE_UNKNOWN
при применении нового режима отображения. Мне не пришлось использоватьsetExtendedState
. Протестировано: работа с использованием Kubuntu 15.10 и Java 8.Exception in thread "main" java.awt.IllegalComponentStateException: The frame is displayable. at java.awt.Frame.setUndecorated(Frame.java:923)
Если вы хотите перевести свой кадр в полноэкранный режим (как фильм в полноэкранном режиме), проверьте эти ответы.
Классы
java.awt.GraphicsEnvironment
иjava.awt.GraphicsDevice
используются для перевода приложения в полноэкранный режим на один экран (диспозитив).например:
источник
Используйте там
setExtendedState(int state)
, где было бы состояниеJFrame.MAXIMIZED_BOTH
.источник
Один из способов - использовать расширенное состояние. Это требует от базовой ОС максимизировать JFrame.
Другой подход - вручную развернуть экран в соответствии с вашими требованиями.
Но в ОС Ubuntu есть подводные камни. Я нашел вот что.
В Fedora вышеуказанной проблемы нет. Но есть сложности, связанные с Gnome или KDE . Так что лучше будь осторожнее. Надеюсь это поможет.
источник
Самое простое исправление:
источник
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
вашим решением и вашим решением?Просто используйте этот код:
Надеюсь, это поможет.
источник
это поможет вам использовать ваш объект в момент кадра
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
источник
Прежде всего, это разрешение, которое вы хотели бы использовать
1650,1080
.Теперь добавим:
Если у вас есть проблемы с компонентами в JFrame, то после добавления всех компонентов с помощью
frame.add(component)
метода добавьте следующий оператор.источник
Это просто делает рамку размером с экран
источник
Вы можете использовать инструмент свойств.
Установите 2 свойства для вашего JFrame :
источник
Вам понадобится только это:
Когда вы используете модификатор MAXIMIZED_BOTH, он будет максимальным по всему окну (высота и ширина).
Некоторые из них предлагают использовать это:
Я не буду рекомендовать это, потому что у вашего окна не будет заголовка, поэтому нет кнопки закрытия / восстановления / свертывания.
источник
Ценности подчеркнули, что я имею в виду:
источник
Установите 2 свойства ниже:
Меня устраивает.
источник