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);
}
메세지 타입은 아래와 같다
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); //에러
또한 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);
'Today I Learned' 카테고리의 다른 글
자바 GUI 기초 - JButton (0) | 2022.11.06 |
---|---|
JAVA GUI : Create New Window (0) | 2022.11.06 |
JAVA LayoutManager(배치관리자) : FlowLayout, GridLayout (0) | 2022.11.05 |
JAVA LayoutManager(배치관리자) : BorderLayout (0) | 2022.11.05 |
자바 GUI 기초 - JFrame, JLabel, JPanel (0) | 2022.10.29 |