ich habe folgendes problem, wollte in einer klasse fenster, ein FENSTER erzeugen, jedoch die bilder sollen von den anderen klassen, die abgeleitet sind erzeugt werden. Aus irgendwelchen gründen auch immer, will er nicht in die methode paint springen und dort das zeichnen
in der klasse paint von der oberenklasse ist das kein problem aber in den unterklassen springt er nicht zu paint rein??
jetzt meine frage kann man paint nur in einem projekt anwenden oder woran liegt das problem??
z.b
als beispiel: nicht mal das funktioniert aber warum???
Code:
class fenster extends JFrame
{
public static void main(String[] sinnlos)
{
fenster wnd = new fenster();
}
public fenster ()
{
super("HALLO ");
setBackground(Color.blue);
setSize( 150, 150 );
setVisible(true);
}
public void paint(Graphics gg)
{
spieler SPIELEER=new spieler(gg);
}
}
public class spieler extends Frame
{
Image image;
public spieler(Graphics t)
{
this.t=t;
image = Toolkit.getDefaultToolkit().getImage("test.png");
this.image=image;
}
public void paint(Graphics gg)
{
Graphics;
MediaTracker laden = new MediaTracker(this);
laden.addImage(image,0);
try {
laden.waitForAll(50);
} catch (InterruptedException e) {
}
gg.drawImage( image, this.rx, this.ry, this );
}
1. In paint wird nur gezeichnet. Bilder laden ist völlig tabu.
2. spieler wird nicht sichtbar gemacht
2.1 zum Glück wird spieler nicht sichtbar gemacht, sonst hättest du ein paar hunder Frames bis dein OS aufgibt, da bei jedem paint ein neues Fenster erzeugt wird.
3. Graphics Objekte an andere Frames zu übergeben ist sinnlos
4. Klassen werden groß geschrieben
könnte mir niemand vielleicht ein kleines programm schreiben? damit ich ungefähr das davon ableiten kann!!
also es soll eine klasse geben, wo ich ein schwarzen hintergrundbild habe. Innerhalb von paint soll eine andere klasse aufgerufen werden die wiederum auch eine paint methode hat (die klasse soll nur ein construktor haben )wo ich ein bild hochladen soll in dem fenster der 1 klasse!!!!!
bin verzweifelt!!!!!!
sitze schon seit stunden und krieg es einfach nicht hin!!