Bilder in Applet anzeigen

cheeZy

Mitglied
Hi Leute,

ja, ich weiß, es wurd wahrscheinlcih schon 10.000 mal gepostet und bei google findet man auch ncohmal mindestens 793.000.000 Ergebnisse dazu, aber:

ich hab es so gemacht, wie im Internet, genauso, wie ich es bei den ganzen Ergebnissen immer wieder sehe, nur leider klappt es nicht, hier:
Code:
(...)
import java.applet.*;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;

(...)
public class Eckig extends Applet implements KeyListener,
            MouseMotionListener {

    Image bild;

    (...)

    public void init() {

        bild = getImage(getDocumentBase(), "Bilder/bild1.jpg");
        (...)
    }

    public void paint(Graphics g) {
        (...)
        g.drawImage(bild,600,100,this);
    }

    (...)
}

die Stelle, wo das Bild nun eigentlich auftauchen sollte, bleibt leer.

Ich habe es auch mit getCodeBase probiert.

Der Pfad zum Bild: C:\Projects\Carsten\build\classes\carsten\Bilder

mfg
Carsten

EDIT:
Ich hab auch ein kleines Prob mit NetBeans. Wo leg ich am besten die Bilder in meinem Projektverzeichnis ab.
Ich leg sie meistens in den build-Ordner:
C:\Projects\Carsten\build\classes\carsten\Bilder
und/oder den src-Ordner:
C:\Projects\Carsten\src\carsten\Bilder
da ich nicht sicher bin, welches davon die Codebase bzw. Documentbase ist :)
Problem ist jetzt, dass der Ordner bei einem Clean and Build gelöscht wird, mein ich zumindest.
Welche Vorgehensweise empfehlt ihr mir?
Nur noch Build, anstatt Clean and Build?
Den Pfad zu den Bildern ändern, wie müsste er dann aussehen, wenn er bspws. einfach im Ordner "Carsten" wäre?
Das Löschen des Ordners iwie vermeiden?

Grüße
Carsten

EDIT:
Ich hab nun auch noch einen MediaTracker hinzugefügt, das blieb aber auch ohne Erfolg.
 
Zuletzt bearbeitet:
Da ist ein Beispiel:
Code:
import java.awt.*;
import java.awt.event.*;

class ImagePanel extends Panel
{
  Image img;


  // Konstruktor von ImagePanel
  public ImagePanel()
  {
    img = Toolkit.getDefaultToolkit().
	  getImage("loading-msg.gif");
    
    MediaTracker mt = new MediaTracker(this);
    mt.addImage(img,0);
    
    try
    {
      mt.waitForID(0);
    } catch(InterruptedException ie){}
  }

  // Ausgabe des Bildes
  public void paint(Graphics g)
  {
    g.drawImage(img,20,20,this);
  }
}


/***********************************
 *  Klasse fuer das Rahmenfenster  *
 **********************************/
class ImageFrame extends Frame
{
  // 
  public ImageFrame()
  {
    setTitle("Bilder");
    setSize(200,200);

    addWindowListener(new WindowAdapter()
    {
      public void windowClosing(WindowEvent e)
      {
	System.exit(0);
      }
    });

    // Panel zum Rahmen hinzufuegen
    add(new ImagePanel());
  }
}


/***************************
 *  H A U P T K L A S S E  *
 **************************/
public class ImageDemo
{
  // Startpunkt des Beispiels
  public static void main(String[] args)
  {
    Frame rahmen = new ImageFrame();
    rahmen.show();
  }
}
 

Neue Beiträge

Zurück