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); } }
출력