지도 뷰를 오른쪽 단추에서 왼쪽으로 이동하려면 마우스 단추를 변경하려고합니다.JMapViewer : setMovementMouseButton() 메서드의 이상한 동작
은 마우스 왼쪽 버튼을 클릭 한 후 버튼을 변경하는 간단한 코드가:
이public class Map extends JMapViewer {
public Map() {
new DefaultMapController(this){
public void mousePressed(MouseEvent e) {
this.setMovementMouseButton(MouseEvent.BUTTON1);
}
};
}
}
메인 클래스 :
public class JMapViewerDemo {
public static void main(String[] args) {
JFrame f = new JFrame();
f.add(new Map());
f.setSize(800, 600);
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
놀랍게도, 코드가 작동하지 않습니다이 (더 재 할당은 없었다 끝난). 왜? 그러나, 부모 클래스의 방법 다음과 같은 동작이 관찰되었다
public void mousePressed(MouseEvent e) {
super.mousePressed(e); //Calling the parent-class method
this.setMovementMouseButton(MouseEvent.BUTTON1);
}
호출 한 후 :
을 마우스 왼쪽 버튼을 클릭합니다. 드래그 할 때 아무런 재 할당도 수행하지 않았습니다 (동일한 상황) .
왼쪽 마우스 버튼을 놓습니다.
마우스 왼쪽 버튼을 다시 클릭하십시오. 드래그 할 때 왼쪽 마우스 버튼에 패닝이 지정됩니다.
이 동작이 이상합니다. 어쩌면이 방법을 잘못 사용하고 있습니다 ...
해제 및 다시 클릭하지 않고 패닝 단추를 직접 변경하는 방법은 무엇입니까? 당신의 도움을 주셔서 감사합니다 ... 볼