본문 바로가기

Today I Learned

자바 GUI 기초 - JOptionPane

JOptionPane

JOptionPane은 알림창 같은 다이얼로그 박스를 띄우게 만들어주는 컴포넌트이다.

 

showMessageDialog()는  부모컴포넌트, 메세지, 타이틀, 메세지 타입을 작성할 수 있으며

다양한 메세지 타입으로 질문,경고,에러 아이콘의 알림창을 띄울 수 있다.

 

JOptionPane.showMessageDialog(parentComponent, message, title, messageType);

	public static void main(String[] args) {
		//JOptionPane = pop up a standard dialog box that prompts users for a value
		//				or informs them of something
		
		JOptionPane.showMessageDialog(null, "내용", "제목", JOptionPane.PLAIN_MESSAGE);

	}

PLAIN_MESSAGE TYPE

메세지 타입은 아래와 같다

		JOptionPane.showMessageDialog(null, "내용", "제목", JOptionPane.PLAIN_MESSAGE); //기본
		JOptionPane.showMessageDialog(null, "내용", "제목", JOptionPane.INFORMATION_MESSAGE); //중요한 메세지
		JOptionPane.showMessageDialog(null, "내용", "제목", JOptionPane.QUESTION_MESSAGE); //질문
		JOptionPane.showMessageDialog(null, "내용", "제목", JOptionPane.WARNING_MESSAGE); //경고
		JOptionPane.showMessageDialog(null, "내용", "제목", JOptionPane.ERROR_MESSAGE); //에러

QUESTION_MESSAGE TYPE

또한 showConfirmDialog() 함수는 아래와 같은 형식으로 다이얼로그를 띄운다.

다음은 JOptionPane.YES_NO_CANCEL_OPTION 옵션을 적용했을 경우이다.

JOptionPane.showConfirmDialog(null, "bro, do you even code?","this is my title",JOptionPane.YES_NO_CANCEL_OPTION);

여기서 예는 0, 아니오는 1, 취소는 2의 int 값을 가진다.

		int anwser = JOptionPane.showConfirmDialog(null, "bro, do you even code?","this is my title",JOptionPane.YES_NO_CANCEL_OPTION);
		System.out.println(anwser);

showInputDialog()는 입력창을 보여주는 다이얼로그이다.

		String name = JOptionPane.showInputDialog("What is your name?");
		System.out.println("hello "+name);

 

showOptionDialogs는 아래와 같은 arg를 가질 수 있다.

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

 

***

parameter는 함수 혹은 메소드 정의에서 나열되는 변수 명이다.

argument는 함수 혹은 메소드를 호출할 때 전달 혹은 입력되는 실제 값이다.


parameter는 매개변수를 뜻하며 함수와 메소드 입력 변수 명을 의미하고

argument는 전달인자 또는 인자를 뜻하며 함수와 메소드의 입력 값을 뜻한다.

***

		String[] responses = {"No, you're amazing!", "Thanks","*blush*" };
		ImageIcon icon = new ImageIcon("duck.png");
		JOptionPane.showOptionDialog(null, "Duck say : You are amazing", "Secret message", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE, icon, responses, 0);