2013-04-13 4 views

답변

1

예, 가능합니다.

사용자가 이미지를 가져올 때마다 변경할 이미지가있는 JPanel이 있다고 가정합니다.

JPanel panel = new JPanel(); // create a JPanel 
this.setupGI(panel); // prepare your background 
panel.addMouseListener(new MouseHandler()); // add a listener 
this.getContentPane.add(panel); // add it to JApplet/JFrame 

MouseHandler 사용자 정의 핸들러 클래스 될 것 리스너를 추가하는 것입니다 : 코드는 다음과 같은 것이다.

class MouseHandler extends java.awt.event.MouseAdapter{ 
    @Override public void mouseEntered(MouseEvent e){ 
    // your logic here 
    } 
    @Override public void mouseExited(MouseEvent e){ 
    // 
    } 
} 

자, MouseHandler 클래스는 JPanel에 접근하는 방법을 잘 그건 당신에게 달려 있습니다. 일반적으로 핸들러 클래스는 하위 클래스로 만들어 모든 클래스의 메서드, 필드에 액세스 할 수 있도록합니다. 또는 getter 및 setter 메서드를 만들 수 있습니다. 너하기에 달렸다. 여기

더 : http://docs.oracle.com/javase/tutorial/uiswing/events/mouselistener.html

+1

detalis 주셔서 감사합니다. –

0

MouseListener를 mouseEntered 및 mouseExited 이벤트와 함께 사용하십시오.

+1

그러나 실제로는 눈속임을 implenemt하지 않는 좋은 선택을 스윙. 원하는 경우 JavaFX를 더 잘 살펴보십시오. –

관련 문제