Как скрыть стандартные кнопки сворачивания / разворачивания и закрытия в окне JFrame в Java?
Я хотел бы знать, возможно ли создать JFrame
окно, которое не имеет кнопок максимизации / минимизации (-) и закрытия (x) по умолчанию! Я добавил пользовательские кнопки в каждый кадр, чтобы пользователю не приходилось возиться с кнопками по умолчанию в правом верхнем углу окна!
5 ответов
Вы можете использовать JWindow, потому что по умолчанию un_decorated, но вы можете установить Undecorated() для JFrame/JDialog
другие способы
реализует WindowListener
Используйте JFrame.setDefaultLookAndFeelDecorated. Возможно, это не совсем то, что вам нужно, но доктор говорит:
Предоставляет подсказку о том, должны ли вновь созданные JFrames иметь свои художественные оформления окна (такие как границы, виджеты для закрытия окна, заголовок...), предоставляемые текущим внешним видом.
Попробуйте этот код:
JFrame frame = new JFrame("Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(100, 100);
frame.setUndecorated(true);
frame.getRootPane().setWindowDecorationStyle(JRootPane.NONE);
frame.setVisible(true);
Это удалит весь заголовок. Также взгляните на эту тему.
В противном случае используйте JWindows.
frame.setUndecorated(true);
frame.getRootPane().setWindowDecorationStyle(JRootPane.NONE);
JFrame.setDefaultCloseOperation(frame.DO_NOTHING_ON_CLOSE);
Кнопка "X" не будет работать. Это работает для меня.
Если вы используете Netbean, просто отмените выбор опции изменения размера в свойствах. Будет отключена только кнопка "Свернуть / Развернуть".