- ベストアンサー
画像を表示させるプログラム
こんばんわ。 現在、Javaで画像を表示させるアプレットを作っているのですが、画像が表示されません。 書いたソースは以下です。 import java.applet.Applet; import java.awt.*; /* <applet code="Panel.class" width="497" height="600"> </applet> */ public class Panel extends Applet { Image data; public void init() { data = getImage(getDocumentBase(),"2-1.gif"); } public void paint(Graphics g) { g.drawImage(data, 0, 0, data.getWidth(this), data.getHeight(this), this); } } 2-1.gifという画像ファイルを表示させたいと思っています。画像ファイルはソースファイルと同じディレクトリにあります。appletviewerで実行しているのですが画像がさっぱり表示されません。 SDKのバージョンは1.5を使っています。 お手数おかけしますが、ご教授の程よろしくおねがいします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Javaでは、イメージの読み込みに失敗したときは、 何の例外も投げられず、 何のエラーメッセージも表示されず、 単にイメージが描かれないという仕様になっています。 イメージの読み込みに失敗する主な原因は: ・「2-1.gif」というファイルが存在しない。 あるいは正しい位置にファイルが置かれていない。 ・セキュリティやパーミッションのせいでファイルを読めない。 ・「2-1.gif」が画像ファイルではない。 あるいはJavaでサポートされていない画像形式である。 画像が正しくロードされたかチェックするには checkImage()メソッドを使います。 if ((checkImage(data,this) & ERROR) != 0) { // 画像の読み込みに失敗した }
その他の回答 (2)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
>クラス名を変えてみましたが すみません、実際に試してみましたが、クラス名は直接関係ないみたいです。 ウチの環境では、問題なく表示されました。 また、推測なんですが、ファイルが読めていないのだと思います。
補足
ファイルが読み込めていないようでした。 ご指摘ありがとうございました
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
おそらく、クラス名のPanelが悪い(ブッキングする)のではないかと思います。 例えば ImageViewなどと名前を変えてみては?
補足
クラス名を変えてみましたが やはり画像は表示されないようです。 わざわざご回答ありがとうございました。
お礼
画像が読み込めていないようでした。 画像の保存形式をJPGに変換したところ表示されるようになりました。 Javaでgifはサポートされていないということだったのでしょうか、どちらにしろ表示されるようになってよかったです、ありがとうございました。