• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:画像がうまく表示されません)

画像がうまく表示されないプログラムの対処法

このQ&Aのポイント
  • Javaのプログラムで画像が表示されない現象が発生しています。特にInternet Explorerで更新ボタンを押すと画像が表示されなくなります。この問題に対処するために、以下の対応策を試してみてください。
  • 1. ローカルドライブで実行すると正常に表示されるため、ネットワークでの実行時に発生する問題と思われます。ネットワークでの実行時にも画像が表示されるようにするためには、適切なパスを指定する必要があります。
  • 2. プログラムの初期化部分で画像の読み込みを行っていますが、読み込みが完了していない状態で描画を行ってしまっている可能性があります。画像の読み込みが完了してから描画を行うように修正してみてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • kacchann
  • ベストアンサー率58% (347/594)
回答No.2

>最初の読みこみはうまくいくのですが、(一部出なくなる画像がありますが…) この「一部出なくなる画像がある」 というのが、すでにあやしい。あやしすぎる。 (「全部」でなく「一部」ってのが、ね) 僕の予測では、やはり 「アプレットが画像ファイルを探し出せていない」 なのだが。ファイル名が微妙に違うとか。 (まあ、わからないけどね) -------- 次のように、 エラーチェックするように init()のコードを変えてみよう! public void init(){ mt = new MediaTracker(this); for(int i = 0;i < 6;i++){ img[i] = getImage(getCodeBase(),i+".gif"); mt.addImage(img[i],i);//※第2引数に注目 } try { mt.waitForAll(); } catch( InterruptedException e) {} //※メディアトラッカーによるローディングの際のエラーをチェック for (int i = 0;i < 6;i++) { if (mt.isErrorID(i)) { System.out.println("ファイル番号:"+i+" でエラー発生"); } } } -------------- このようにコードを変えて、 あとはアプレットを実行してみよう! (※このときのアプレットは「ローカルドライブ上に置いたもの」でもよい) このとき、InternetExprolerの「Javaコンソール」を開いて、 出力を見てみよう。 なにかエラーが表示されているかな? -------------- ちなみに… 不具合特定のために「Javaコンソール」を使うのは基本よん。

exprosion
質問者

お礼

ありがとうございます。 早速実行したいのですが、僕は学生で、 今はテスト期間中なので、すぐにすることができません。 テストが終わるのが一週間後なのですが、 テストが終わり次第実行してみたいと思います。 そのときに結果を書きたいと思っていますので、 できれば、一週間後、(2/27か2/28になると思います) もう一度ここを見てくださればありがたいです。

exprosion
質問者

補足

教えてくださったコードを実行してみました。 ローカルドライブ・ネットワークドライブのどちらでも エラーは表示されませんでした。 また、更新ボタンを押したときもエラーは表示されませんでした。 今回、問題解決はできませんでしたが、 Javaコンソールの使い方や画像読み込みエラーのことについて分かり、今後も十分に役立てられそうです。 どうもありがとうございました。

その他の回答 (1)

  • kacchann
  • ベストアンサー率58% (347/594)
回答No.1

サーバに画像ファイルは、 ちゃんと置いてあるのかな?

exprosion
質問者

補足

ありがとうございます。 画像ファイルはすべて同じフォルダ内に置いてあります。 クラスファイルや画像など、全く同じものを入れたフォルダごとネットワークドライブからローカルドライブへ移動させて実行するとうまくいきます。 また、最初の読み込みはうまくいっているので、 画像を見つけられない訳ではないと思います。 そして、更新をおこなった際にうまくいかなくなります。

関連するQ&A

専門家に質問してみよう