こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

★Appletで画像読み込み&画像表示★

import java.awt.*;
import java.applet.*;

public class S1 extends Applet
{
Image img;

public void init()
{
img=getImage(getCodeBase(),"sample.jpeg");
}
public void paint(Graphics g){
g.drawImage(img,50,50,this);
}
}

以上プログラムでアプレット上に拡張子がjpeg形式のsampleという100*100の画像を表示しようとしています。
クラス名はS1で問題なくエラーもありません。
java関連のサイトでも同じようにして画像が表示できるとされていたのですが、私のパソコンではアプレット上には何も表示されないまま、アプレットのみが起動するという状態になりました。
Eclipse SDKというものを使用していますが、それが原因なのかどうかもわからず困っています。
お手数をお掛けしますが、回答の程よろしくお願いします。

投稿日時 - 2008-09-22 18:52:28

QNo.4348608

すぐに回答ほしいです

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

そのアプレットは、ちゃんとWebサイトにアップロードし、Webブラウザからアクセスして試してみたのだろうか。それとも、ローカルボリュームにおいてあるのをそのままWebブラウザで見ようとしたのか。

前者で表示されないのであれば、ファイル名とか、あるいはHTMLのタグとかどこかに問題があるのかもしれない。が、後者で表示されないのであれば、それは正常。アプレットにはさまざまな制限があり、ローカルボリュームに置かれた状態でローカルボリュームにあるファイルにはアクセスできない。(ただし、アプレットビューワを使えば表示できる)

また、もし作成したアプレットがJarファイルにまとめられているとしたら、これは表示されないのが当たり前。getImageはファイルアクセスをするものであって、Jarのアーカイブ内にあるイメージデータを読み込むことはできないから。

Eclipseを使っているかどうかはこの場合、無関係だろう。多くのJavaプログラマはEclipseを利用しているはずだし、それで何の問題もないはずだから。

投稿日時 - 2008-09-22 21:35:00

補足

なるほど! 私は明らかに後者ですね。
アプレットビューアを使っているのにできないのが謎なんですが。。。
Jarファイルというのがわからないので、それが臭いかもしれません。
一度確認してみます。 ありがとうございます!

投稿日時 - 2008-09-24 01:33:15

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

アプレットビューアーで実行したのでしょうか?
パッケージング化していないなら classファイルと同じフォルダーに『sample.jpeg』が無いといけないことになりますよ

実行手順やファイルの置き場所の構成など見直してみましょう

プロジェクト
  javaファイル
  classファイル
  Sample.jpeg
といった具合でないと画像の取得に失敗するでしょう

投稿日時 - 2008-09-23 03:29:54

補足

javaファイルというのはわたしのでいうところのbinファイルの相当するのかなと思います。(それ以外にプロジェクト内にファイルがないので)
そこに原因があるのかもしれませんね。
もうちょっと調べてみます。ありがとうございます。

投稿日時 - 2008-09-24 01:44:22

あなたにオススメの質問