package other;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class NullLayoutManagerMouseListener extends JFrame{
JPanel contentPane = new JPanel();
public JLabel label;
NullLayoutManagerMouseListener(){
setTitle("MouseListener 이벤트 예제");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setContentPane(contentPane);
contentPane.setLayout(null);
MyMouseListener listener = new MyMouseListener();
contentPane.addMouseListener(listener);
label = new JLabel("Hello");
label.setSize(30,30);
label.setLocation(50,20);
contentPane.add(label);
setSize(500,500);
setVisible(true);
}
public static void main(String[] args){
new NullLayoutManagerMouseListener();
}
}
class MyMouseListener implements MouseListener{
public void mouseReleased(MouseEvent e){}
public void mouse클릭ed(MouseEvent e){} //디씨에서 클릭을 영어로 작성하지 못하게 막아놓았네요
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){
JLabel label = (JLabel)e.getSource();
int x = e.getX();
int y = e.getY();
label.setLocation(x,y);
}
}
다음과 같이 mousePressed 메소드를 오버라이딩 하였는데 실행하여 마우스로 클릭하여도 아무런 변화가 없네요.
어디가 잘못된건가요??
댓글 0