2014-02-10 4 views
2

자식의 렌더링 및 마우스 이벤트를 조정하는 확장 된 JPanel을 찾고 있습니다.확대/축소 가능 JPanel 구현을 아는 사람이 있습니까?

혼자서 구현하려했으나 최종 버전이기 때문에 dispatchEvent() 메서드를 재정의 할 수 없어서 이벤트를 처리하지 못했습니다.

MouseListener/MouseMotionListener으로 이벤트를 캐 내려고 dispatchEvent()을 사용하여 다시 디스패치했지만 스택 오버플로가 발생하여 문제가 해결되지 않았습니다.

크기 조정 된 렌더링 및 레이아웃 크기 조정은 정상적으로 작동합니다.

아무도 이것의 작동 구현을 알고 있습니까?

+0

magnifierui 클래스를 보았습니까? –

+0

@PhilippSander 예 했어요. 파견 이벤트 문제는 해결되지 않습니다. 나는 JXLayer UI와 새로운 JLayer를 사용하여이를 풀려고했지만 아무도 디스패치 문제를 해결하지 못했습니다. – Stephan

답변

0

좋아, 나는 그것과 함께 MouseEventUI을 사용하고 AffineTransform getTransform(final JXLayer<? extends V> l) 메서드를 재정의했다. 내 유일한 문제는 툴팁 및 팝업 메뉴 위치가 변형되지 않았기 때문입니다.

ToolTipManager를 속이는 법을 모르겠습니다.

2

정확한 요구 사항에 따라 다소 복잡 할 수 있지만 https://weblogs.java.net/blog/alexfromsun/archive/2006/07/jxtransformer_t.html (소스 코드는 https://java.net/projects/swinghelper)입니다.

+0

힌트를 가져 주셔서 감사합니다. 그러나 이것은 내 시도보다 훨씬 나쁩니다. 또한 오래 동안 중단되었습니다. – Stephan

+0

@Stephan jxtransformer가 당신을 위해하지 않는 것은 무엇입니까? 과거에 비 사각형 구성 요소를 회전하는 데 성공적으로 사용했습니다. – jackrabbit

+0

많은 렌더링 문제가 있으며 이벤트 변환에 대한 내 문제가 해결되지 않았습니다. – Stephan