ImageIconを使ったイメージのロード
ImageではなくImageIconを使うと自動的にMediaTrackerが使われるため便利です。ImageIconからImageを取り出すにはgetImage()を使います。ImageIconの利用例です。
/** * イメージをロードする */ private void loadImage() { // プレイヤーのイメージを読み込む // ImageIconを使うとMediaTrackerを使わなくてすむ ImageIcon icon = new ImageIcon(getClass().getResource( "image/player.gif")); image = icon.getImage(); // 幅と高さをセット width = image.getWidth(panel); height = image.getHeight(panel); }
イメージを表示する(2004/10/9)と比較してみてください。今回はImageIconクラスを使ってイメージをロードし、ImageIconのgetImage()を使ってImageオブジェクトを取り出しています。このように書くとMediaTrackerを使う必要がなくなります。ImageIconは自動的にMediaTrackerを使ってくれるからです。こっちの方が簡潔な書き方なので以後使っていきます。