イメージを Java アプレットにロードしようとしています。いくつかの方法を試しましたが、アプレットにイメージが表示されません。
これが私のコードです:
public class BackgroundApplet extends Applet {
Image backGround;
Image fish;
public void init() {
// set the size of the applet to the size of the background image.
// Resizing the applet may cause distortion of the image.
setSize(300,300);
// Set the image name to the background you want. Assumes the image is in
// the same directory as the class file is
backGround = getImage(getCodeBase(),"underwater.jpg");
BackGroundPanel bgp = new BackGroundPanel();
bgp.setLayout(new FlowLayout());
bgp.setBackGroundImage(backGround);
// set the layout of the applet to Border Layout
setLayout(new BorderLayout());
// now adding the panel, adds to the center(by default in Border Layout) of the applet
add(bgp);
fish = getImage(getCodeBase(), "fish.jpg");
}
public void paint(Graphics g)
{
// Attempt 1
g.drawImage(fish,20,20,this);
// Attempt 2
ImageIcon img = new ImageIcon("fish.jpg");
img.paintIcon(this, g, 20,20);
// Attempt 3
Image image = img.getImage();
g.drawImage(image, 50, 50, this);
}}
ご覧のとおり、背景画像もアプレットにロードしましたが、問題なく表示されています。魚が背景画像の後ろにロードされている可能性はありますか?
どんな助けでも大歓迎です、ありがとう!
** 無関係なメモ: Runnable インターフェースを実装すると (背景画像の上にアニメーションを表示したいため)、アプレットを実行したときに背景画像が突然表示されなくなります。これについてもヒントはありますか?