Установите JFrame всегда сверху и отключите все JFrame за ним
У меня есть 2 кадра в моем проекте, 1 - это мой основной кадр, а 2-й - это кадр, который виден только при нажатии кнопки.
отображать jframe.class при нажатии кнопки.
вот мой код в моей кнопке действие выполнено
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
jframe jf = new jframe();
jf.setVisible(true);
jf.setAlwaysOnTop(true);
}
Этот код работает, но проблема в том, что я хочу, чтобы основной кадр был отключен или не активирован, пока второй кадр виден...
я могу сделать то же самое понятие JOptionPane?
1 ответ
Решение
По сути, вы говорите о модале. Вы должны использовать JDialog и установить модальность в true, передавая JFrame в качестве аргумента:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){
myFrame = new JFrame("Hello World");
modal = new JDialog(myFrame, "This is a modal!", true);
modal.setVisible(true);
modal.setLocationRelativeTo(null); //Center the modal
}
Вы можете найти больше документации здесь:
https://docs.oracle.com/javase/tutorial/uiswing/misc/modality.html