paint-Methode überschrieben - trotzdem JComponenten zeichnen

Status
Nicht offen für weitere Antworten.

KSG9|sebastian

Top Contributor
Hi Leute,

ich hab folgendes Problem:

Meine Klasse erbt von JFrame und überschreibt die paint-Methode. Jetzt will ich ein JPanel in das JFrame setzen mit

Code:
JPanel p = new JPanel();
//größe
//farbe
/bounds

super.getContentPane().add(p);

Leider wird das Panel nicht angezeigt, liegt das daran dass ich die paint-Methode überschrieben hab? Wie kann ich das ganze lösen?
Ich hab kein (Null-)Layout gesetzt, da das Panel die einzige Componente ist die ich benutze, alles andere Zeichne ich. Ich würd das null layout auch gerne weiter verwenden da ich bei meinem Programm genaue Positionsangaben benutzen muss.

Wär dankbar für Hilfe 😉
 
Zeig mal wie du die paint überschrieben hast!
[edit] ich tippe mal drauf das du super.paint(g) vergessen hast:

Code:
public  void paint(Graphics g) {
    super.paint(g);
    ... // dein Zeugs
}
[/quote]
 
ich habs jetzt so gemacht:


Code:
public void paint(Graphics g){
//mein zeugs mit g.draw..
paintComponents(g);
}
 
hm, kein Plan mach's einfach wie ich's geschrieben habe 🙂 ich würde auch erst die super.paint(g) aufufen und dann den Rest, da sonst dein Kram von der Komponente 'übermalt' wird
 
Man braucht super.paint(g) da sonst die normalen Zeichenaktionen net durchgeführt werden und nur das dann gezeichnet wird, was du auch sagst!
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben