JDialog

  • Dialog는 자식 창.
    프로그램에서 부가적인 기능을 제공해야 할 때.
    Window Component (하위 컴포넌트를 배치하여 사용자에게 보여줄 때 사용)
    BorderLayout이 기본 레이아웃
    이벤트처리 method는 반드시 setVisible 전에 설정해야 한다.

  • Frmae : 주기능

  • Dialog : 부가적인 기능
    부모창(Frame)을 통해서 자식창(Dialog)을 열어준다.
    자식창이 동작할 때 부모창이 선택되지 않는 것을 modal이라고 한다.
    자식창이 동작할 때 부모창이 선택되는 것을 non-modal이라고 한다.

문법

Frame을 사용하는 것과 같다.
상속하여 사용

public class UseDialog extends JDialog{
	// 이벤트와 관련있는 컴포넌트 선언
	생성자(윈도우컴포넌트){//부모가 없는 Dialog생성
    
        super(윈도우컴포넌트)//부모가 부모가 없는 Dialog생성
        
        컴포넌트 생성, 배치, 이벤트 등록
	}
}

FileDialog

OS에서 제공하는 파일을 선택하기 위한 윈도우 컴포넌트.
java.awt패키지에서 제공.

문법

1. 객체 생성
FileDialog fd = new FileDialog(this, "타이틀 바에 들어갈 내용" 모드);
//모드는 열기 모드와 저장 모드가 있다.
//열기 : FileDialog.LOAD
//저장 : FileDialog.SAVE

2. 사용자에게 보여주기
fd.setVisible(true);

3. 경로얻기
String path = fd.getDirectory();

4. 파일명 얻기
String name = fd.getFile();

JOptionPane

swing에 많이 사용하는 Dialog를 미리 구현하여 제공하는 클래스
InputDialog, MessageDialog, ConfirmDialog 3가지를 제공.

  • JOptionPane.showInputDialog : 사용자가 입력하는 값을 받음.
String data = JOptionPane.showInputDialog("메시지", "기본값");
  • JOptionPane.showMessageDialog : 사용자에게 메시지를 제공.
JOptionPane.showMessageDialog("메시지");
  • JOptionPane.showConfirmDialog : 사용자의 의향 묻기.
int data = JOptionPane.showInputDialog("메시지");
//int => 0 : 예, 1 : 아니오, 2 : 취소
//예: JOptionPane.OK_OPTION, 아니오: JOptionPane.NO_OPTION, 
//취소: JOptionPane.CANCEL_OPTION

0개의 댓글