2012-04-13 13 views
1

ブラウザが移動されたため、埋め込みJavaアプレットの位置が変更されたときにイベントを取得できますか?埋め込みJavaアプレットからの移動イベントの取得

明白な方法は動作しません:任意の固定要素も、ループ内のアプレットの

applet.addComponentListener(new ComponentListener() {    
    public void componentMoved(ComponentEvent e) { 
     System.out.println("componentMoved"); 
    } 
    // snip 
}); 
+0

これは疑問に思えますが、何かを達成するための間違ったアプローチです。ところで、実際に達成しようとしていることは何ですか? –

+0

@Andrew Thompson:ポップアップウィンドウがあり、アプレットと一緒に移動したいと思っています。 –

+0

Hmm ..アプレットとポップアップウィンドウは、通常は悪い考えですが、説明してくれてありがとう。その場合、ブラウザー移動**または**ページスクロールでフローティングウィンドウを移動したいと思うでしょう。 –

答えて

1

コールgetLocationOnScreen()を。アプレットを含むページがスクロールされたときにも起動します。

+0

これはおそらく最適なソリューションです。残念ながら、これにはいくつかの欠点があるようです。OS X上のSafariとFirefox上でgetLocationOnScreen()はアプレットがフォーカスを取り戻すまで更新されません。 –

+0

これはあまりにも悪いです。あなたが最高の試みのSSCCEを投稿したら、それを見てみましょう。 (コードがWindows/FFで動作するかどうかは少なくとも確認することができます) –

+0

心配する必要はありません。 Windows上ではうまく動作しますが、一般的な解決方法がないため、ユーザーがアプレットを移動する必要がある場合は、ポップアップウィンドウを1つだけ残しておきます。 –

関連する問題