doublemetal 2013. 7. 19. 10:43


마우스 이벤트 처리

enter는 리슨하는 객체 위에 마우스가 올라 갈 때

exit은 그 반대일 경우

click은 객체가 포커싱 되면서 클릭이 완료 될 때

press는 객체(버튼)이 눌려질 때

release는 포커스를 잃은 상태에서 클릭이 완료 될 때



public class ListenerMouseEx extends JFrame {


ListenerMouseEx() {

setTitle("버튼에 Mouse 이벤트 리스너 작성");

setLayout(new FlowLayout());

setDefaultCloseOperation(EXIT_ON_CLOSE);


JButton btn = new JButton("Mouse Event 테스트 버튼");

btn.setBackground(Color.YELLOW);

MyMouseListener listener = new MyMouseListener();

btn.addMouseListener(listener);

add(btn);

setSize(300, 150);

setVisible(true);

}


public static void main(String[] args) {

// TODO Auto-generated method stub

new ListenerMouseEx();

}

}


class MyMouseListener implements MouseListener {


@Override

public void mouseClicked(MouseEvent e) {

// TODO Auto-generated method stub

JButton btn = (JButton) e.getSource();

btn.setBackground(Color.BLUE);

}


@Override

public void mouseEntered(MouseEvent e) {

// TODO Auto-generated method stub


}


@Override

public void mouseExited(MouseEvent e) {

// TODO Auto-generated method stub


}


@Override

public void mousePressed(MouseEvent e) {

// TODO Auto-generated method stub


}


@Override

public void mouseReleased(MouseEvent e) {

// TODO Auto-generated method stub

JButton btn = (JButton) e.getSource();

btn.setBackground(Color.GREEN);

}

}