Applet Bild einbinden

  • Themenstarter Themenstarter _xyz
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
X

_xyz

Gast
Hallo,

ich weiß dazu gibt es schon tausende Themen, aber die haben mir nicht weiter geholfen.
Also mein Problem ist, dass das Bild nicht angezeigt wird. Sonst scheint ja alles zu funktionieren. Es kommt ja auch keine Fehlermeldung. Wer schön, wenn da einer schnell weiterhelfen könnte...

Hier der Code:
Code:
import java.awt.*;
import java.net.*;
import java.applet.*;


public class Image extends Applet {

		Image jackImage;
		AudioClip musicClip;


	/** Initialisierung des Applets.
	 *	Es werden je eine Bild- u. Tondatei vom Hostrechner geladen.
	 */
	 	public void init() {
			jackImage = getImage(getCodeBase(), "jack.jpeg");
			musicClip = getAudioClip(getCodeBase(), "music.au");

		}

	/*	Das Bild wird im Ausgabebereich angezeigt. */
		public void paint(Graphics g) {

			g.drawImage(jackImage, 0, 0, null);
		}

	/** Start des Applets.
	 *	Der Sound wird abgespielt.
	 */
		public void start() {
			play(getCodeBase(), "music.au");

		}

	/*	Abbrechen des Abspielens. */
		public void stop() {
			musicClip.stop();
		}
}

Hier auch noch zur Not der HTML-Code:
Code:
<applet
name="Image"
code="Image.class"
width="410"
height="310"
align="Top"
alt="If you had a java-enabled browser, you would see an applet here.">
</applet>

Also ich weiß leider nicht weiter. Drum wär Hilfe gut...
 
Gib mal das Applet als ImageObserver an.
Code:
g.drawImage(jackImage, 0, 0, this);
 
Tut sie auch.

Ich hab schon an alles mögliche gedacht und auch versucht. Sogar ein anderes Bild hab ich verwendet, aber nix klappt.
 
Benutze mal nen MediaTracker, damit sichergestellt werden kann, dass das Bild auch vollständig geladen ist.

Falls das auch ncihts hilft, mach mal in die paint n System.out.println() rein. Wenn dann nix in der Java-Konsole steht, dann aktualisiert dein Browser dein Applet einfach nicht und läd es immer wieder aus dem Cache.
 
MediaTracker?!

Und System.out.println() hab ich gerade versucht. Zeigt aber nix an. Geht eigentlich in einen Applet diese Fkt.?!
 
Hobbit_Im_Blutrausch hat gesagt.:
Benutze mal nen MediaTracker, damit sichergestellt werden kann, dass das Bild auch vollständig geladen ist.
Auch wenn du den MediaTracker nicht benutzt, wird das Bild angezeigt werden, vorausgesetzt, dass das Bild wirklich existiert. Du hast das Bild dann eben nicht sofort zur Verfügung sondern es kann etwas dauern, je nach Bandbreite. Aber angezeigt wird es in jedem Fall.

@_xyz: Welchen Browser benutzt du? Und wo hast du nach Fehlermeldungen gesucht?
 
Internet Explorer

Aber wenn ich das Applet im AppletViewer öffne, hat das doch wenig mit dem Browser zu tun oder bin ich da falsch informiert.
 
Nein, da bist du richtig informiert. Wenn's nicht im AppletViewer geht, dann gehts auch sonst nirgendwo.

Kannst du sonst Applets ausführen?
 
Haaach! Ich depperter Depp! Hab erst beim zweiten Mal Hingucken gesehen, dass du deine Klasse Image genannt hast. Normalerweise dürftest du das gar nicht kompiliert bekommen. Die Klasse aus dem AWT wird von deiner verdeckt.

Entweder du änderst die Deklaration von jackImage mit Angabe des Paketnamens, oder du änderst den Namen der Klasse.
 
L-ectron-X hat gesagt.:
Auch wenn du den MediaTracker nicht benutzt, wird das Bild angezeigt werden, vorausgesetzt, dass das Bild wirklich existiert. Du hast das Bild dann eben nicht sofort zur Verfügung sondern es kann etwas dauern, je nach Bandbreite. Aber angezeigt wird es in jedem Fall.

Aber auch nur, wenn ein repaint aufgerufne wird, nachdem das Bild geladne ist 😉 .

L-ectron-X hat gesagt.:
Haaach! Ich depperter Depp! Hab erst beim zweiten Mal Hingucken gesehen, dass du deine Klasse Image genannt hast

Tatsache, ist mir auch net aufgefallen :shock:
 
habe den namen der Klasse schon geändert. funktioniert trotzdem nicht. ich schau mal ob das auf einen anderen rechner funktioniert.
 
der andere rechner funktioniert leider nicht, also konnt ich es nicht ausprobieren.

also es sind keine Fehler vorhanden?! demzufolge könnt ichs einsenden?!
 
Wenn du den Namen geändert hast, musst du auch eine eventuell noch vorhandene Image.java oder Image.class aus dem Verzeichnis entfernen, da das Problem sonst weiter besteht.
 
ich habs, es funktioniert. das bild wird angezeigt.

ich hatte anstatt jack.jpg, jack.jpeg eingegeben. und dadurch hatte es nicht funktioniert.

jetzt muss ich nur noch den sound so einstellen, dass er ständig abgespielt wird und dann bin ich fertig.

ich bedanke mich nochmal recht herzlich bei allen für ihre hilfe.

danke danke.
 
Dann hätte es aber eigentlich einen Fehler geben müssen (FileNotFoundException). Du hast aber gesagt es gibt keinen :?
 
es wurde wirklich keiner angezeigt. das versteh ich ja auch nicht.
ich weiß auch, dass sich das sonst schon viel früher erledigt hätte.
 
Du kennst die Java-Konsole in deinem Browser und weißt auch, dass die nicht automatisch aufgeht, sobald ein Fehler kommt!?
 
ja ich kenn die javakonsole im browser und das ist mir auch klar das die nicht aufgeht, wenn ein fehler kommt. deshalb kann ich es mir ja auch nicht erklären, warum der nie nen fehler angezeigt hat und trotzdem das applet ausgeführt hatte ohne bild.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben