package java0915_gui; import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import javax.swing.ButtonGroup; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JRadioButton; import javax.swing.JTextArea; class EventTest extends JFrame implements ActionListener, ItemListener { JRadioButton topBtn, midBtn, botBtn; JTextArea ta; public EventTest() { topBtn = new JRadioButton("ì", true); midBtn = new JRadioButton("ì¤"); botBtn = new JRadioButton("í"); ta = new JTextArea(10, 10); // ë¼ëì¤ë²í¼ì 그룹ì¼ë¡ 묶ì´ì¤ë¤. ButtonGroup bg = new ButtonGroup(); bg.add(topBtn); bg.add(midBtn); bg.add(botBtn); JPanel p1 = new JPanel(); p1.add(topBtn); p1.add(midBtn); p1.add(botBtn); add(BorderLayout.NORTH, p1); add(BorderLayout.CENTER, ta); topBtn.addActionListener(this); midBtn.addActionListener(this); botBtn.addActionListener(this); // topBtn.addItemListener(this); // midBtn.addItemListener(this); // botBtn.addItemListener(this); setSize(400, 300); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } // ì¤íììë§ ë©ìëê° ì¤íëë¤. 1ë² ì¤íë¨ @Override public void actionPerformed(ActionEvent e) { Object obj = e.getSource(); if (obj == topBtn) ta.append(topBtn.getText()); if (obj == midBtn) ta.append(midBtn.getText()); if (obj == botBtn) ta.append(botBtn.getText()); } // í´ì ììë ë©ìëê° ì¤íëë¤. 2ë² ì¤íë¨ @Override public void itemStateChanged(ItemEvent e) { // ta.setText(""); Object obj = e.getSource(); if (obj == topBtn) ta.append(topBtn.getText()); if (obj == midBtn) ta.append(midBtn.getText()); if (obj == botBtn) ta.append(botBtn.getText()); } } public class Java220_gui { public static void main(String[] args) { new EventTest(); } }