package com.event; //Mouse Motion
import java.awt.Color;
import java.awt.Frame;
import java.awt.Label;
import java.awt.Button;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
import java.awt.event.ActionListener;
public class MouseMotionEx extends Frame implements ActionListener, MouseMotionListener{
Label move = new Label("마우스 따라 다니기", Label.CENTER);
Button exit = new Button("종료");
public MouseMotionEx(){
setTitle("MouseMotion 테스트");
//좌표로 컴포넌트의 위치를 지정할경우 레이아웃을 사용하지 않음
setLayout(null);
move.setBounds(100,50,150,20);//x,y width height
exit.setBounds(250,500,50,30);
move.setForeground(Color.white);
move.setBackground(Color.red);
add(move); //Frame에 Label 등록
add(exit);
//Frame의 x,y width , height
setBounds(300,100,500,600);
setVisible(true);
exit.addActionListener(this);
//Frame 이벤트 소스와 이벤트 리스너가 구현된 객체 연결
addMouseMotionListener(this);
}
public static void main(String[] args) {
new MouseMotionEx();
}
//이벤트 핸들러
public void actionPerformed(ActionEvent e){
System.exit(0);
}
//이벤트 핸들러
public void mouseMoved(MouseEvent e){
Point p = e.getPoint(); //마우스의 포인터의 x,y
move.setLocation(p);
}
//이벤트 핸들러
public void mouseDragged(MouseEvent e){}
}