Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서는 몇 가지 유형의 JDialog 상자를 만들 수 있습니까?


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

출력

Java에서는 몇 가지 유형의 JDialog 상자를 만들 수 있습니까?