1

単純に画像をインポートして画面に表示する小さな JApplet があります。しかし、私はそれでいくつかの問題を抱えています。

private Image logo1;

public void init() {
    logo1 = getImage( getCodeBase(), "Penguins.jpg" );
}

@Override
public void paint( Graphics g ) {
    g.drawImage( logo1, 0, 0, this );
}

それは本質的に私のプログラム全体です。問題はありますか?問題の 1 つは、画像がコンピューターの特定の場所などにある必要があることだと思います...この画像のアドレスは C:\Users\Public\Pictures\Sample Pictures です

4

3 に答える 3

1

getCodeBase()のメソッド呼び出しにある理由はgetImage()、コードベースの場所を取得するためです。

コードベースは、すべてのソース パッケージを保持するフォルダーです。srcプロジェクトのフォルダーの上にあるフォルダーである可能性が最も高いです。通常のプロジェクト(少なくとも私のプロジェクト)の基本構造は次のとおりです。

-MyProject -これはコードベース
  です -src -すべてのコードはおそらくこのフォルダーにあります。すべてのパッケージがここにフォルダーとして表示されます
  -bin -コードがコンパイルされると、
ここに保存されます -data   -すべてのリソースが保持される場所です (私の好み)
    -images -画像はここに
表示されます       -Penguin.jpg -あなたのイメージ

これらすべてが次の答えにつながります。上記の構造では、への呼び出しは次のようにgetImage()なります。

getImage(getCodeBase(), 'data/images/Penguin.jpg');
于 2012-06-30T00:19:47.713 に答える
0

表示したい画像を Java プログラムのフォルダに含めてみてください。画像が別のフォルダにある場合、アプレットに表示されないことがあります。私も同様の問題に直面しました。イメージをプロジェクト フォルダにコピーするだけです。

于 2018-12-30T20:00:50.643 に答える