SOを通して宗教的に読んでいる間、クラシックを介してJavaでアニメーションGIFを使用する多くの例を見てきました。
JLabel mylabel=new JLabel(new ImageIcon("animated.gif"));
これは正常に動作しますが、 mylabel を に追加すると、フレームが変更されるたびにJPanel
JPanel のメソッドが呼び出されることに気付きました。paintComponent
gif
それは本当に必要ですか?
gif は JLabel に分離されていませんか?
gif がフレームを循環するたびに、パネル全体 (およびパネルに追加されたその他のコンポーネント) を再描画するのは時間の無駄に思えます。
なぜ私が気にかけているのか不思議に思っているかもしれませんが、Web デザイン (js/css) を行うことで、リフローをほぼ完全に回避し、変更されている要素だけに再描画を分離する方法を学びました。驚異的なパフォーマンスを発揮しました。