메세지 박스 (대화 상자)

오늘·2021년 2월 23일
0

Java

목록 보기
6/42
  • 아래와 같이 팝업으로 주로 사용자에게 오류나 경고 또는 짧은 메시지를 전달하는 데 사용되는 박스
JOptionPane.showMessageDialog(null, "내용입니다");

JOptionPane

  • 팝업창을 띄워주는 스윙 클래스
    사용자가 입력, 확인, 알림 창을 만들수 있는 클래스

-총 4가지의 메소드가 존재한다.
1. showMessageDialog
2. showInputDialog
3. showConfirmDialog
4. showOptionDialog

showMessageDialog

단순 메시지를 출력한다. 입력값을 받지 않기 때문에 리턴값이 존재하지 않는다.

JoptionPane.showMessageDialog(Component parentComponent, Object msg, String title, int messageType);
  • messageType
    -다이얼로그의 종류를 지정해 줄 수 있다.
    -ERROR_MESSAGE INFORMATION_MESSAGE, WARNING_MESSAGE, QUESTION_MESSAGE,PLAIN_MESSAGE

ex)JOptionPane.showMessageDialog(null, "대화상자내용", "대화상자제목부분", JOptionPane.WARNING_MESSAGE);

ex) JOptionPane.showMessageDialog(null, "대화상자내용", "대화상자제목부분", JOptionPane.PLAIN_MESSAGE);

ex) JOptionPane.showMessageDialog(null, "대화상자내용", "대화상자제목부분", JOptionPane.INFORMATION_MESSAGE);


showInputDialog

-입력 다이얼로그다. 한 줄을 입력받을 수 있는 메소드
-String 형태로 그 입력값이 저장되고, 입력이 없을시(취소 선택시) null 값이 저장된다.

String name = JOptionPane.showInputDialog("이름을 입력하세요");
System.out.print("이름 : " + name);

팝업창
'디디' 입력시


showConfirmDialog

-사용자에게 y/n 와 같은 응답을 입력받는다.
-리턴 값은 int 타입
JOptionPane.showConfirmDialog(parentComponent, message, title, optionType)

  1. parentComponent: 이 창을 띄우는 component를 지정. null이면 전체 화면 중앙에 출력
  2. message: 사용자에게 보여줄 메세지
  3. title : 제목, 다이얼로그 창 문구
  4. optionType: 다이얼로그의 옵션 종류를 지정
    (YES_NO_OPTION, YES_NO_CANCLE_OPTION, OK_CANCLE_OPTION)
//이런식으로 사용합니다.

int answer = JOptionPane.showConfirmDialog(null, "종료하시겠습니까?", "confirm",JOptionPane.YES_NO_OPTION );
if(answer == JOptionPane.YES_OPTION){
	//사용자가 yes를 눌렀을 떄
	System.out.println("프로그램을 종료합니다.");
} else{
	//사용자가 Yes 외 값 입력시
	System.out.println("종료를 취소합니다.");
}


showOptionDialog

사용자가 원하는 선택 버튼을 만들 수 있다.

JOptionPane.showOptionDialog(parentComponent, message, title, optionType, messageType, icon, options, initialValue);

icon : null 지정시 기본값
options : 예, 아니요, 확인, 취소 대신 버튼에 사용자가 원하는 배열을 지정 가능하다.
initialValue : 기본값으로 설정된 것. null 지정시 첫번째 값이 기본이다.

String[] buttons = { "샐러드", "떡볶이", "연어", "쌀국수" };

int num = JOptionPane.showOptionDialog(null, "오늘의 점심", "제목 표시줄입니다.", JOptionPane.YES_NO_CANCEL_OPTION,
		JOptionPane.QUESTION_MESSAGE, null, buttons, "쌀국수");

System.out.println(num);

리턴 값은 int 형이다. 쌀국수 버튼을 누르면 num에 '3'이 값으로 들어가게 되는 것

0개의 댓글