2

JFreeChart を使用してプロットを表示するアプリケーションがあります。たまたま、これらのプロットは大きく、JFreeChart はそれほど高速ではないため、特にプロットのサイズを変更するときに、再描画に時間がかかります。

私が求めているのは、サイズ変更中にプロットを表す画像を引き伸ばす方法です (iPhone が再起動中に停止したアプリケーションのスクリーンショットを表示するのと少し似ています)、ユーザーがマウスを離した後にのみ完全な再描画を実行します。 (つまり、プロットの最終的なサイズが判明したら)。

チャートのインタラクション機能はそのまま維持する必要があります (もちろん、サイズを変更しない場合)。

これに対する一般的な解決策/Swingラッパーはありますか? (JFreeChart 固有でなければならない理由はありません)。

乾杯

4

1 に答える 1

3

具体的な答えはなく、考えられる戦略にすぎません

  • サイズ変更の開始時に、プロットを BufferedImage にペイントし、プロットの代わりにその画像を表示してサイズ変更します
  • サイズ変更を停止すると、画像が削除され、プロットが再度表示されます

JDK 7 では、イメージ/操作に JLayer を使用できます。

編集

別の方法として (JLayer の場合)、CardLayout を使用することもできます。サイズ変更中に 1 つのカードを画像とともに表示し、サイズ変更していないときに別のカードをプロットとともに表示します。SwingX ImagePainter は、サイズ変更中に画像のスケーリングを行うことができます

于 2011-09-08T09:25:27.173 に答える