JavaのBatikライブラリからJSVGCanvasオブジェクトがあります。私のアプリケーションでは、回路図でいくつかのオブジェクトをレンダリングしています。外部ソースからレンダリングしている適切なツールチップと説明をレンダリングできるように、マウスの下にあるコンポーネントを知る必要があります。
私の質問は、カーソルの下にあるオブジェクトをいつでも特定するにはどうすればよいですか?
ツールチップと説明を追加するオブジェクトがわかっている場合は、各オブジェクトにEventListenerを追加できます。私は私のアプリケーションで同じことをしました。
関連するすべてのノードについて、次のことを行います。
org.w3c.dom.events.EventTarget t = (EventTarget) node;
t.addEventListener("mouseover", new SvgOnHoverAction());
ここで、SvgOnHoverActionはorg.w3c.dom.events.EventListenerを実装します
そこにあなたは:
public void handleEvent(Event evt) {
Element target = (Element)evt.getCurrentTarget();
...
}