this beim einlesen von bildern

  • Themenstarter Themenstarter neoXxX
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
N

neoXxX

Gast
Hi Leute,

ich habe da ein Verständnisproblem. Und zwar geht es dabei um das this beim Laden von Bildern. Ich konnte nachlesen, dass das eine Referenz auf das Fensterobjekt ist und zum Überwachen des Ladevorgangs dient. Allerdings verstehe ich nicht genau was mit dem Fensterobjekt gemeint ist?? Und wie das genau zusammenhängt?

Ich habe hier auch den Code

Code:
import java.awt.*;

public class Poly extends javax.swing.JApplet {

		Image im;

		public void init(){
		im = getImage(getCodeBase(),"material/pati.jpg");
		}

		public void paint (Graphics screen){
		screen.drawImage(im, 10, 10, this);
		}
}
 
this ist die Klasse Poly

screen.drawImage(im, 10, 10, this);
Gelesen:
Zeichne im auf 10,10 in poly
 
Zed hat gesagt.:
this ist die Klasse Poly

screen.drawImage(im, 10, 10, this);
Gelesen:
Zeichne im auf 10,10 in poly

Das ist falsch - im wird auf screen gezeichnet! Die Poly-Klasse erbt von JApplet. Das ist mit "Fensterklasse" gemeint - in diesem Fall kein klassisches Fenster, sondern ein Applet. Macht aber nichts, da ImageObserver von der Klasse Component implementiert wird - JFrame, Frame, JApplet...all diese Klassen erben von Component und können daher als Parameter in der Methode drawImage() angegeben werden. Genau DAS ist das "this" welches gemeint ist.
Schau dir doch einfach mal an, welche Methoden/Konstanten ImageObserver bereitstellt, dann dürfte es klar werden, wofür man ihn braucht :wink:
 
Hab nicht in die Api geschaut. Muddin hat teilweise recht.

der vierte Parameter ist ein ImageObserver das ist ein Interface das JApplet implementiert und da Poly von JApplet erbt hat Poly auch einen ImageObserver. Der ImageObserver hat Konstanten und Mehoden die in jApplet implementiert sind diese Methoden besitzt auch Poly somit ist this auch Poly
 
Danke für eure Antworten, versteh das schon ein bischen besser. 🙂

Also this verweißt auf Poly. Poly hat das Interface ImageObserver. ImageObserver überwacht den Ladevorgang des Bildes.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben