note

Iteam Event 본문

자바/AWT

Iteam Event

투한 2011. 12. 29. 14:22
package com.event;//ItemEvent 살펴보기

import java.awt.Panel;
import java.awt.Button;
import java.awt.Checkbox;
import java.awt.TextArea;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

public class ItemEventEx extends Frame implements ItemListener,ActionListener{

	//패널로 감싸서 확대시키지 않음
	Panel p1 = new Panel();
	Panel p2 = new Panel();
	TextArea ta = new TextArea(5,20);
	
	//이벤트 소스
	Button exit = new Button("종료");
	Checkbox cb1 = new Checkbox("축구",false);
	Checkbox cb2 = new Checkbox("야구",false);
	Checkbox cb3 = new Checkbox("농구",false);
	Checkbox cb4 = new Checkbox("배구",false); //기본적으로 체크를 안시키려면 false

	public ItemEventEx(){
		super("ItemEvent 테스트");

		p1.add(cb1);
		p1.add(cb2);
		p1.add(cb3);
		p1.add(cb4);

		p2.add(exit);

		add("North",p1);
		add("South",p2);
		add("Center",ta);

		setBounds(300,300,300,300);
		setVisible(true);

		//이벤트 소스와 이벤트 리스너가 구현된 객체
		exit.addActionListener(this);

		cb1.addItemListener(this);
		cb2.addItemListener(this);
		cb3.addItemListener(this);
		cb4.addItemListener(this);
	}

	public static void main(String[] args) {
		new ItemEventEx();

	}
	//ActionEvent를 처리하는 이벤트 핸들러
	public void actionPerformed(ActionEvent e){
		System.exit(0);
	}
	//ItemEvent를 처리하는 이벤트 핸들러
	public void itemStateChanged(ItemEvent e){
		if(e.getStateChange()==ItemEvent.SELECTED)
			ta.append(e.getItem() + "을 선택\n\n");
		else if(e.getStateChange() == ItemEvent.DESELECTED)
			ta.append(e.getItem()+"을 취소\n\n");

	}
}


'자바 > AWT' 카테고리의 다른 글

Mouse Motion  (0) 2011.12.29
Key Event  (0) 2011.12.29
이벤트 처리  (0) 2011.12.29
AWT 프레임의 배치관리자로 보더 레이아웃 설정하기  (0) 2011.12.29
AWT Penel 테스트  (0) 2011.12.29