이번에는 showInputDialog 와 showOptionDialog 를 알아보겠습니다.
이 두 메소드는 짧아서 한번에 할께요.
일단 이번에도 기존 소스에 추가하였습니다.
보시는 바와 같이 추가하였고, showInputDialog는 2가지, showOptionDialog는 한가지로 테스트 할께욤.
showInputDialog는 2가지인데요
첫번째꺼는 말 그대로 Input!! 즉 주관식으로 우리가 text같은걸 넣는 겁니다.
그리고 두번째 꺼는 흔히 말하는 스피너 있죠? 그거라고 생각하시면 됩니다.
그러니깐 첫번째껀 주관식, 두번째껀 객관식 ㅎ
일단 소스코드를 보면서 설명하겠습니다.
아 기본적인 버튼에 대해서 잘 모르시면 앞에 포스팅했던 JButton 부분을 참고바랍니다.
먼저 showInputDialog 첫번째 소스입니다.
1 2 3 4 5 | //showInputDialog else if(e.getSource()==btnShowinputdialog){ String text=JOptionPane.showInputDialog(null,"What's your hobby?","hobby",JOptionPane.INFORMATION_MESSAGE); JOptionPane.showMessageDialog(null,"Your hobby is "+text); } | cs |
메소드를 잠시 보시면요.
JOptionPane.showInputDialog(Component arg0, Object arg1, String arg2, int arg3)
Component arg0 : 다이얼로그를 표시할 프레임인데 기본적으로 null을 쓴다했죠?
Object arg1 : 이 부분이 뿌려줄 메세지 부분
String arg2 : 요긴 타이틀이구요
int arg3 : 여긴 아이콘~
그리고 showInputDialog 첫번째 꺼는 리턴값이 String입니다.
이 String 값은 우리가 넣어준 text가 되겠죠.
이 것을 받아서 코드에 응용하는 겁니다.
Line 4: 여기서는 우리가 넣어준 text를 그대로 뿌려줬습니다.
그럼 첫번째 showInputDialog 클릭해 보죠~
취미를 물어보는군요~ 아~ basketball이라고 적어볼께용~
짜잔~ 위의 Line 4 에서 응용해준데로 취미를 띄워주네용^^
아주 간단하죠? 그럼 두번째 showInputDialog를 보실께요.
이건 스피너라고 했죠? 그래서 그런지 파라메터도 많습니다.
일단 두번째 showInputDialog 소스입니다.
1 2 3 4 5 | }else if(e.getSource()==btnShowmultiinputdialog){ Object[] choiceOne={"SAMSUNG-GALAXY","APPLE-IPhone","LG-G","Pantech-VEGA"}; Object choose=JOptionPane.showInputDialog(null,"what is best cell phone?" ,"Best phone",JOptionPane.QUESTION_MESSAGE,null,choiceOne,choiceOne[0]); JOptionPane.showMessageDialog(null,"Your best cell phone is "+choose); } | cs |
음..메소드를 한번 보실께요.
JOptionPane.showInputDialog(Component arg0, Object arg1, String arg2, int arg3, Icon arg4, Object[] arg5, Object arg6)
Component arg0 : 이건 같습니다. null
Object arg1 : 이부분도 머~ showInputDialog 메세지구요.
String arg2 : showInputDialog 타이틀
int arg3 : showInputDialog 아이콘.
여기부터 추가된 파라메터입니다.
Icon arg4 : 이부분은 null을 해주세요.
Object[] arg5 : 요기가 스피너의 아이템들을 넣어주시는 건데 위의 Line 2에 보면 제가 추가를 해놨습니다. 그걸 여기다 넣어주시구요.
Object arg6 : 요긴 다이얼로그가 나타났을때 기본적으로 보여줄 아이템입니다.
한번 두번재 showMultiInputDialog 를 클릭해 보겠습니다.
Line 2 : 제가 추가해준 아이템들 즉 'SAMSUNG-GALAXY', APPLE-IPhone', 'LG-G', 'Pantech-VEGA'이 스피너로 들어가는데요.
Line 3: 여기서 제가 'SAMSUNG-GALAXY'를 기본 아이템으로 선택해서 위의 그림과 같이 'SAMSUNG-GALAXY'가 바로 보입니다.
그럼 전 APPLE-IPhone 를 선택하고 '확인'을 눌러볼께용.
그럼 요렇게 제가 선택한 아이템을 보여줍니다.
혹시라도 '취소'를 누르시면 null값이 반환됩니다.(전 처리를 안했습니다^^;;)
아 이것으로 showInputDialog는 끝이났습니다.ㅎ
이제 showOptionDialog를 알아볼께요.
showOptionDialog의 소스입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | //showOptionDialog else if(e.getSource()==btnShowoptiondialog){ Object[] option={"IPhone5S","Galaxy Note3","G3"}; int response=JOptionPane.showOptionDialog(null, "What's your phone?","Select Phone",JOptionPane.DEFAULT_OPTION ,JOptionPane.QUESTION_MESSAGE, null, option, option[0]); if(response==0){ JOptionPane.showMessageDialog(null,"Your phone's company is APPLE"); }else if(response==1){ JOptionPane.showMessageDialog(null,"Your phone's company is SAMSUNG"); }else if(response==2){ JOptionPane.showMessageDialog(null,"Your phone's company is LG"); } } //showOptionDialog | cs |
showOptionDialog 의 메소드를 알아보면
JOptionPane.showOptionDialog(Component arg0, Object arg1, String arg2, int arg3, int arg4, Icon arg5, Object[] arg6, Object arg7)
Component arg0 : null(왜그런지 아시죠?ㅎ).
Object arg1 : showOptionDialog 의 메세지구요.
String arg2 : showOptionDialog 의 타이틀입니다.
int arg3 : 이건 메세지 옵션인데, 앞에서 했던 showCofirmDialog 옵션있죠? 근데 어차피 옵션 만들어주는 거라 왜 있는지 모르겠네요. 뭘 선택해도 같습니다. 일반적으로 JOptionPane.DEFAULT_OPTION 해주세요.
int arg4 : showOptionDialog의 아이콘.
Icon arg5 : 이것도 null을 넣어주세요.
Object[] arg6 : 이게 옵션아이템들인데 위의 소스에서 보시면 Line 3에 만들어 줬습니다.
Object arg7 : 이건 기본적으로 선택할 아이템입니다.
그리고 showOptionDialog는 반환값이 integer입니다.
showOptionDialog를 클릭해 보겠습니다.
Line 3 에서 만든 아이템들이 나타나는 것을 보실 수 있습니다. 'IPhone5S', 'Galaxy Note3', 'G3'.
그리고 Line 4 에서 기본적으로 선택한 'IPhone5S'에 선택마크가 있는걸 보실 수 있어요.
저는 'Galaxy Note3'를 선택했습니다.(내폰은 노트3니까 ㅎ)
그러면 선택된게 나타나는 걸 보실 수 있어요^^(Line 5~Line 11)
이로써 JOptionPane은 끝이났구요~ 다음엔 또 다른 기능으로 포스팅하겠습니다.^^
'Study > JAVA' 카테고리의 다른 글
JAVA SWING JScrollPane 자동스크롤 (0) | 2015.02.12 |
---|---|
JAVA SWING JScrollPane (0) | 2015.02.12 |
JAVA SWING JOptionPane showConfirmDialog (2) | 2015.02.12 |
JAVA SWING JOptionPane showMessageDialog (2) | 2015.02.12 |
JAVA SWING JCheckBox (0) | 2015.02.12 |