javax.swing.JOptionPaneJOptionPane은 사용자에게 값을 묻거나 정보를 알려주는 표준 대화 상자를 쉽게 팝업 해서 이용할 수 있게 해 줍니다. Show 이 클래스는 메소드 수가 많아서 복잡해 보일 수 있겠지만 메소드를 다음과 같이 크게 4가지로 분류할 수 있기 때문에 익혀두면 사용하기 쉽습니다.
1. showMessageDialog단순히 정보를 알려주는 메세지 상자 팝업showMessageDialog는 단순한 정보를 알려주는 대화 상자를 팝업 시켜주고, 메소드는 다음과 같다. JOptionPane.showMessageDialog(parentComponent, message, title, messageType); parentComponent : 주로 null값이 들어간다. 부모 컴포넌트를 지정해서 팝업 활성화를 제어할 수 있다. message : 팝업 상자에 표시될 내용이다. title : 팝업 상자에 표시될 타이틀이다. messageType : 팝업 상자에 기본으로 정할 수 있는 아이콘을 지정할 수 있다. 메시지 타입으론 5가지가 있다. 1) ERROR_MESSAGE 2) INFORMATION_MESSAGE 3) QUESTION_MESSAGE 4) WARNING_MESSAGE 5) PLAIN_MESSAGE는 아무 아이콘도 표시되지 않는다.
위와 같이 입력 시 결과는 다음과 같다. showMessageDialog 사용 예시2. showConfirmDialog선택할 수 있는 옵션을 같이 제공하는 팝업showConfirmDialog는 정보와 함께 선택지를 옵션으로 같이 제공하는 대화 상자를 팝업 시켜줍니다. JOptionPane.showConfirmDialog(parentComponent, message, title, optionType, messageType); parentComponent : 주로 null값이 들어간다. 부모 컴포넌트를 지정해서 팝업 활성화를 제어할 수 있다. message : 팝업 상자에 표시될 내용이다. title : 팝업 상자에 표시될 타이틀이다. messageType : 팝업 상자에 기본으로 정할 수 있는 아이콘을 지정할 수 있다. OptionType : 팝업 상자에서 고를 수 있는 옵션의 종류를 지정할 수 있다. 옵션 타입으론 4가지가 있다. 1) DEFAULT_OPTION 2) OK_CANCEL_OPTION 3) YES_NO_OPTION 4) YES_NO_CANCEL_OPTION 옵션을 선택하면 정수를 리턴한다. 각 옵션에 따라 리턴되는 값은 다음과 같다. OK == 0 YES == 0 NO == 1 CANCEL == 2 X(팝업 종료) == -1
위와 같이 입력 시 결과는 다음과 같다. showConfirmDialog 사용 예시3. showInputDialog입력값을 받을 수 있는 팝업showInputDialog는 사용자에게 직접 입력을 받아 올 수 있고 형태는 두 가지가 있습니다. 1) 키보드 입력을 직접 받는 형태이 형태의 메소드는 다음과 같습니다. ① JOptionPane.showInputDialog(parentComponent, message, initialMessage); parentComponent : 주로 null값이 들어간다. 부모 컴포넌트를 지정해서 팝업 활성화를 제어할 수 있다. message : 팝업 상자에 표시될 내용이다. initialmessage : 팝업 상자 입력창에 기본적으로 적어 놓을 내용이다. ② JOptionPane.showInputDialog(parentComponent, message, title, messageType); parentComponent : 주로 null값이 들어간다. 부모 컴포넌트를 지정해서 팝업 활성화를 제어할 수 있다. message : 팝업 상자에 표시될 내용이다. title : 팝업 상자에 표시될 타이틀이다. messageType : 팝업 상자에 기본으로 정할 수 있는 아이콘을 지정할 수 있다. 입력값을 입력하고 OK를 누르면 입력한 그대로 문자열을 전달할 수 있다.
위와 같이 입력 시 결과는 다음과 같다. showInputDialog 사용 예시2) 옵션을 정해 입력받는 형태이 형태의 메소드는 다음과 같습니다. JOptionPane.showInputDialog(parentComponent, message, title, messageType, icon, value[], initialValue); parentComponent : 주로 null값이 들어간다. 부모 컴포넌트를 지정해서 팝업 활성화를 제어할 수 있다. message : 팝업 상자에 표시될 내용이다. title : 팝업 상자에 표시될 타이틀이다. messageType : 팝업 상자에 기본으로 정할 수 있는 아이콘을 지정할 수 있다. icon : 아이콘 이미지를 직접 지정할 수 있다. vlaue[] : 직접 정해줄 옵션의 배열을 지정한다. initialValue : 정해준 옵션에서 기본적으로 표시하고 있을 내용이다. 옵션을 정하고 OK를 누르면 옵션의 내용을 Object형으로 전달하기 때문에 아래와 같이 문자열로 형 변화할 필요가 있다.
위와 같이 입력 시 결과는 다음과 같다. showInputDialog 사용 예시4. showOptionDialog옵션을 통해 입력을 받을 수 있는 팝업showOptionDialog는 직접 정의한 옵션을 모두 보여주며 입력을 받을 수 있는 대화 상자를 팝업 시켜줍니다. JOptionPane.showInputDialog(parentComponent, message, title, optionType, messageType, icon, value[], initialValue); parentComponent : 주로 null값이 들어간다. 부모 컴포넌트를 지정해서 팝업 활성화를 제어할 수 있다. message : 팝업 상자에 표시될 내용이다. title : 팝업 상자에 표시될 타이틀이다. OptionType : 팝업 상자에서 고를 수 있는 옵션의 종류를 지정할 수 있다. messageType : 팝업 상자에 기본으로 정할 수 있는 아이콘을 지정할 수 있다. icon : 아이콘 이미지를 직접 지정할 수 있다. vlaue[] : 직접 정해줄 옵션의 배열을 지정한다. initialValue : 정해준 옵션에서 기본적으로 표시하고 있을 내용이다. 옵션을 선택하면 옵션의 순서에 맞는 정수(배열 인덱스)를 전달한다.
위와 같이 입력 시 결과는 다음과 같다. showOptionDialog 사용 예시 |