16.11.2013 Aufrufe

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Programmieren</strong> <strong>in</strong> <strong>Java</strong><br />

3.3.5 Das La<strong>de</strong>n und Anzeigen von Bil<strong>de</strong>rn<br />

Den Umgang mit Bil<strong>de</strong>rn ermöglicht die Klasse Image <strong>de</strong>s Pakets java.awt. In<br />

e<strong>in</strong>em Applet können Metho<strong>de</strong>n <strong>de</strong>r Klassen Applet und Graphics zum La<strong>de</strong>n und<br />

Anzeigen von Bil<strong>de</strong>rn herangezogen wer<strong>de</strong>n. Bil<strong>de</strong>r wer<strong>de</strong>n als seperate Dateien<br />

außerhalb <strong>de</strong>r .class-Dateien von <strong>Java</strong> gespeichert. Falls die Image-Klasse<br />

verwen<strong>de</strong>t wird, muß das Bild im Format .GIF o<strong>de</strong>r .JPG vorliegen.<br />

La<strong>de</strong>n von Bil<strong>de</strong>rn. Es erfolgt mit <strong>de</strong>r Metho<strong>de</strong> getImage()aus <strong>de</strong>r Applet-Klasse,<br />

die mit e<strong>in</strong>em o<strong>de</strong>r zwei Argumenten aufgerufen wer<strong>de</strong>n kann:<br />

- Aufruf von getImage mit e<strong>in</strong>em Argument (e<strong>in</strong> Objekt vom Typ URL 224 )<br />

- Aufruf mit zwei Argumenten (Basis URL <strong>de</strong>s Bilds (URL-Objekt)) und e<strong>in</strong> Str<strong>in</strong>g, <strong>de</strong>r <strong>de</strong>n relativen<br />

Pfad o<strong>de</strong>r <strong>de</strong>n Date<strong>in</strong>amen <strong>de</strong>s aktuellen Bilds angibt.<br />

Die Klasse Applet besitzt zwei Metho<strong>de</strong>n zum Erzeugen e<strong>in</strong>er Basis-URL ohne<br />

Angaben fester Adressen im Programm:<br />

- die Metho<strong>de</strong> getDocumentBase() gibt e<strong>in</strong> URL-Objekt zurück, das <strong>de</strong>n Ordner (das<br />

Verzeichnis) repräsentiert, die die Webseite mit <strong>de</strong>m Applet enthält.<br />

- die Metho<strong>de</strong> getCo<strong>de</strong>Base() gibt e<strong>in</strong> Verzeichnis (Ordner) zurück, das das Verzeichnis<br />

repräsentiert, <strong>in</strong> <strong>de</strong>m sich die .class-Datei <strong>de</strong>r Hauptklasse <strong>de</strong>s Applet bef<strong>in</strong><strong>de</strong>t.<br />

Ausgabe von Bil<strong>de</strong>rn. Mit <strong>de</strong>r Metho<strong>de</strong> drawImage() <strong>de</strong>r Graphics-Klasse kann e<strong>in</strong><br />

Bild, das <strong>in</strong> e<strong>in</strong> Image-Objekt gela<strong>de</strong>n wur<strong>de</strong>, angezeigt wer<strong>de</strong>n. drawImage() hat 4<br />

Argumente:<br />

- das Image-Objekt, das angezeigt wer<strong>de</strong>n soll<br />

- die x- und y-Koord<strong>in</strong>ate<br />

- das Schlüsselwort this<br />

Mit pa<strong>in</strong>t() kann das Bild zur Anzeige gebracht wer<strong>de</strong>n:<br />

public pa<strong>in</strong>t(Graphigs g)<br />

{<br />

g.drawImage(imageObjekt, xKoord, yKoord, this);<br />

}<br />

Bsp. 225 :<br />

import java.awt.*;<br />

import java.applet.*;<br />

public class ZeichneBild extends Applet<br />

{<br />

private Image bild;<br />

public void <strong>in</strong>it()<br />

{<br />

bild = getImage(getDocumentBase(),"B04240900.jpg");<br />

resize(250, 200);<br />

}<br />

public void pa<strong>in</strong>t(Graphics g)<br />

{<br />

<strong>in</strong>t xPos = 10;<br />

g.drawImage(bild,xPos,10,this);<br />

}<br />

}<br />

224 Adressen im World Wi<strong>de</strong> Web wer<strong>de</strong>n durch URL-Objekte repräsentiert. Die Klasse URL (Uniform<br />

Resource Locator) ist Teil <strong>de</strong>s Pakets java.net<br />

225 vgl. pr33501<br />

248

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!