AWT Popup Menu Action Event 처리

import java.awt.*;
import java.awt.event.*;
public class PopMenu extends Frame 
{
	PopupMenu pmn;
	MenuItem miOpen, miClose;

	public PopMenu() {
		super("::PopMenu::");
		pmn=new PopupMenu();
		add(pmn);  //팝업메뉴는 반드시 add()해줘야 한다
		pmn.add(miOpen=new MenuItem("열기"));
		pmn.addSeparator();
		pmn.add(miClose=new MenuItem("닫기"));


		MyHandler my = new MyHandler();
		//Frame에 마우스리스너 부착---
		addMouseListener(my);
	
	}////생성자-----------

	class MyHandler implements MouseListener
	{
		public void mouseClicked(MouseEvent e) {
			//x좌표, y좌표 타이틀에 올리기
			Point p = e.getPoint();
			// int x = p.x; int y= p.y;
			int x = e.getX();
			int y = e.getY();
			setTitle("x:" + x +"y:"+y);
			System.out.println(e.getButton());
			//if(e.getButton()==3)
			if(e.getButton()==MouseEvent.BUTTON3) {  //오른쪽 번튼이 눌렸을때만
			pmn.show(PopMenu.this,x,y);
			//show(Component origin, int x, int y)
			//팝업메뉴의 show()메소드를 호출해야 모양을 확인할 수 있다.
			}
		}
		public void mouseEntered(MouseEvent e) {
//			setBackground(Color.pink);
		}
		public void mouseExited(MouseEvent e) {
//			setBackground(Color.white);
		}
		public void mousePressed(MouseEvent e) {
//			setBackground(Color.yellow);
		}
		public void mouseReleased(MouseEvent e) {
//			setBackground(Color.cyan);
		}
	}//////////////////////////
	public static void main(String[] args) 
	{
		PopMenu pm=new PopMenu();
		pm.setSize(500,500);
		pm.setVisible(true);
	}
}

'Java > Awt_Swing' 카테고리의 다른 글

AWT Window Event 처리 및 Anonymous 클래스 사용  (0) 2011.12.01
AWT Window Event 처리 및 Adapter 사용  (0) 2011.12.01
AWT Menu Action Event 처리  (0) 2011.12.01
AWT TextField Action Event 처리(inputTest)  (0) 2011.12.01
Swing 예제  (0) 2011.11.29