[Java] ItemEvent/TextEvent 예제

 ItemEvent 예제 

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

댓글

Designed by JB FACTORY