[Java] ItemEvent/TextEvent 예제
- BACKEND/Java
- 2017. 11. 7. 09:35
package event; import java.awt.Checkbox; import java.awt.CheckboxGroup; import java.awt.Frame; import java.awt.Panel; import java.awt.TextArea; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; public class ItemTest1 extends Frame implements ItemListener { Panel p; Checkbox c1, c2, c3, r1, r2; CheckboxGroup g1; TextArea area;
ItemTest1(){ addWindowListener(new WindowExit(this));
p = new Panel(); c1 = new Checkbox("딸기"); c2 = new Checkbox("사과"); c3 = new Checkbox("배"); g1 = new CheckboxGroup(); r1 = new Checkbox("남성", g1, true); r2 = new Checkbox("여성", g1, false); area = new TextArea();
p.add(c1); p.add(c2); p.add(c3); p.add(r1); p.add(r2);
add("North", p); add("Center", area);
c1.addItemListener(this); c2.addItemListener(this); c3.addItemListener(this); r1.addItemListener(this); r2.addItemListener(this);
}
@Override public void itemStateChanged(ItemEvent arg0) { Checkbox cb = (Checkbox)arg0.getSource(); if(cb.getState()) { area.setText(arg0.getItem()+ "이(가) 선택됨"); }else { area.setText(arg0.getItem()+ "이(가) 해제됨");
}
} public static void main(String[] args) { ItemTest1 test = new ItemTest1(); test.setSize(300,400); test.setVisible(true); } }
|
실행결과 ↓
package event; import java.awt.Button; import java.awt.Choice; import java.awt.Frame; import java.awt.List; import java.awt.Panel; import java.awt.TextArea; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.awt.event.WindowListener; public class ItemTest2 extends Frame implements ItemListener, ActionListener { private Panel p; private Button btnDisplay; private Choice choice; private List list; private TextArea area; private String[] items = {"서울", "경기", "인천","수원"};
ItemTest2(){ addWindowListener(new WindowExit(this));
p = new Panel(); btnDisplay = new Button("List 출력"); choice = new Choice(); list = new List(); area = new TextArea();
p.add(choice); p.add(list); p.add(btnDisplay);
add("North",p); add("Center",area);
for(String item : items) { choice.add(item); list.add(item); }
choice.addItemListener(this);
list.setMultipleMode(true); //다중선택
btnDisplay.addActionListener(this); }
@Override public void actionPerformed(ActionEvent arg0) { area.setText(""); //초기화 String[]items = list.getSelectedItems(); for(String item : items) { area.setText(area.getText()+item+"선택됨\n"); } } @Override public void itemStateChanged(ItemEvent arg0) { area.setText(choice.getSelectedItem()+ "이 선택됨"); } public static void main(String[] args) { ItemTest2 test = new ItemTest2(); test.setSize(300,400); test.setVisible(true); } } |
실행결과 ↓
Text 이벤트 예제
package event; import java.awt.Button; import java.awt.Frame; import java.awt.TextArea; import java.awt.TextField; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.event.TextEvent; import java.awt.event.TextListener; public class TextTest extends Frame implements TextListener, KeyListener{ private Button btn; private TextField field; private TextArea area; public TextTest(){ addWindowListener(new WindowExit(this));
btn = new Button("OK"); field = new TextField(); area = new TextArea();
add("North", btn); add("Center", area); add("South", field);
field.addTextListener(this); field.addKeyListener(this); }
@Override public void textValueChanged(TextEvent arg0) { //area.setText(area.getText()+"내용이 변했어요 : " + field.getText()+"\n"); }
@Override public void keyPressed(KeyEvent arg0) { // TODO 키보드를 눌렀을때 // keyEvent -> 키보드의 값을 가져올수 있다. if(arg0.getKeyChar()!= KeyEvent.VK_BACK_SLASH) { area.setText(area.getText()+"내용이 변했어요 : " + arg0.getKeyChar()+"\n"); } } @Override public void keyReleased(KeyEvent arg0) { // TODO 키보드를 띄었을때
} @Override public void keyTyped(KeyEvent arg0) { // TODO 문자 출력을 처리할때 사용
} public static void main(String[] args) { TextTest test = new TextTest(); test.setSize(300,400); test.setVisible(true); } } |
실행결과 ↓
'BACKEND > Java' 카테고리의 다른 글
[Java] Swing (0) | 2017.11.07 |
---|---|
[Java] Window Programming - <Menu> (0) | 2017.11.07 |
[Java] Window Programing - <Event> (0) | 2017.11.06 |
[Java] Window Programming - <Layout> (0) | 2017.11.06 |
[Java] Window Programming (0) | 2017.11.06 |