カスタム Swing コンポーネント内でアニメーションを実行するために使用されるSwing タイマー ( javax.swing.Timer ) があります。
ただし、これは問題を引き起こしています。特に、すべてのウィンドウが閉じられた後でも、ライブ タイマー スレッドが原因で、アプリケーションの終了が停止しているようです。また、アニメーションが表示されないときに非表示のオブジェクトで実行されるタイマーのオーバーヘッドを回避するとよいでしょう。
理想的には、次のことをしたいと思います。
- コンポーネントが非表示になったらタイマーを停止する
- コンポーネントが表示されるたびに時間を再開します
これは可能ですか(もちろん、スレッドセーフな方法で!)