package p0621coffee;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.border.Border;
class CoffeeSize extends JFrame{
JPanel panel, panel2, panel3;
JLabel label, label2;
JRadioButton small, medium, large;
ButtonGroup group;
public CoffeeSize(){
setTitle("라디오 버튼 커피 사이즈 선택");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 250);
panel = new JPanel();
label = new JLabel("어떤 크기의 커피를 주문하시겠습니까?");
panel.add(label);
//add(label);
add(panel,BorderLayout.NORTH);
//중간 패널에 그룹 경계선 (Border 객체)
Border border = BorderFactory.createTitledBorder("크기");
panel2 = new JPanel();
small = new JRadioButton("Small Size");
medium = new JRadioButton("Medium Size");
large = new JRadioButton("Large Size");
group = new ButtonGroup(); //그냥 그룹으로만 묶은거, 화면에 띄우는게 아님
group.add(small);
group.add(medium);
group.add(large);
panel2.setBorder(border); //생성한 객체를 사용하려면 setBorder로 쓰기
panel2.add(small);
panel2.add(medium);
panel2.add(large);
add(panel2,BorderLayout.CENTER);
panel3 = new JPanel();
label2 = new JLabel("크기가 선택되지 않았습니다.");
panel3.add(label2);
add(panel3,BorderLayout.SOUTH);
small.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
label2.setText("Small Size가 선택되었습니다.");
}
});
medium.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
label2.setText("medium Size가 선택되었습니다.");
}
});
large.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
label2.setText("large Size가 선택되었습니다.");
}
});
setVisible(true);
}
}
public class CoffeeEx {
public static void main(String[] args) {
// TODO Auto-generated method stub
new CoffeeSize();
}
}