JDialog 대화 상자 의 하위 클래스입니다. 클래스이며 창의 오른쪽 상단 모서리에 최소화 및 최대화 버튼이 없습니다. Java에서 두 가지 유형의 JDialog 상자를 만들 수 있습니다.
- 모달 대화상자
- 비모달 대화상자
모달 JDialog
자바에서 모달 대화 창이 활성화되면 모든 사용자 입력이 해당 창으로 전달되고 이 모델 대화 상자가 닫힐 때까지 애플리케이션의 다른 부분에 액세스할 수 없습니다.
비모달 JDialog
자바에서 비모달 대화상자 창이 활성화되어 있으면 애플리케이션의 다른 부분에 여전히 정상적으로 액세스할 수 있으며 입력이 해당 부분으로 전달될 수 있지만 이 비모달 대화 상자 창은 닫을 필요가 없습니다.
예시
import javax.swing.*;
import java.awt.*;
import java.awt.Dialog.ModalityType;
public class Modal_NonModal_Dialog {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setTitle("Modal and Non-Modal Dialog");
frame.setSize(350, 300);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
// modal dialog
JDialog nonModalDialog = new JDialog(frame, "Non-Modal Dialog", ModalityType.MODELESS);
nonModalDialog.setSize(300, 250);
nonModalDialog.setLocationRelativeTo(null);
nonModalDialog.setVisible(true);
// non-modal dialog
JDialog modalDialog = new JDialog(frame, "Modal Dialog", ModalityType.APPLICATION_MODAL);
modalDialog.setSize(300, 250);
modalDialog.setLocationRelativeTo(null);
modalDialog.setVisible(true);
}
} 출력
