1
私は再描画を使用してSwingWorker
をトリガーしています。このワーカーは、アプリケーション内の自動調整オプションに従って、画像を囲む幅に合わせて自動的に再作成します。コンポーネントのサイズ変更が停止されるまでSwingWorkerの実行を中止します
問題は、メモリ不足の例外が発生していることです。これは、イメージが大きな解像度を持ち、ウィンドウがドラッグ・リサイズされているときにワーカーが継続的に呼び出されているためです。
isDone()
がtrueの場合、これを回避しようとしたのはです。しかし、私はこれを行うより良い方法があると感じています。おそらく何らかの種類のタイマーを使うことによって?何を指示してるんですか?
私が疑問に思うことは、私がうまくいくかどうかについてです。これを試すことはできますが、[HierarchyBoundsListener](http://docs.oracle.com/javase/7/docs/api/java/awt/event/HierarchyBoundsListener.html)を「JPanel」に追加し、内部あなたが書くことができる 'ancestorResized(...)'、 'swingWorkerObject.cancel(true); swingWorkerObject.execute();'は、それを再始動する感覚を与えるかもしれません。 ! –
+1、もっと助かるために、助けることができる人のために、私の仕事が決してできなかったら:( –