repaint mit awt funktioniert nicht

mp123

Grünschnabel
Hallo,
das Thema mit "repaint funktioniert nicht" wurde zwar hier schon
oft gebracht, aber nur für swing ich hab jetzt das Problem bei awt.

Nach dem Klicken auf den Frame soll sofort ein
Button auf den Frame gezeichnet werden.
Funktionieren tut es nur , wenn das gesamte frame
neu gezeichnet wird, das will ich aber nicht,
denn später soll der frame durch Panels ersetzt werden.

Code:
addMouseListener(new MouseAdapter(){
			
		public void mouseClicked(MouseEvent me){
				
			Button b=new Button("Schließen");
			add(b);
                        frame.repaint()
		//	frame.setVisible(true);
				
		}
			
});
das ganze muss mit awt laufen :(
 
Hallo,

hast du schonmal versucht, den Frame zuerst unsichtbar zu machen, dann den Button hinzuzufügen, und danach das Ding wieder sichtbar zu machen?

Gruß
BK
 
ja,
Code:
frame.setVisible(true);
geht ja,
habs jetzt nur auskommentiert, um repaint(); schreiben zu
können. Wieso kann ich das denn dann nicht
mit repaint() machen ?
 
Kenne mich mit AWT nicht gut aus, aber gibt es dort eventuell ein .invalidate() oder .revalidate()? Die Funktionen ruft man bei Swing auf, wenn Objekte hinzugefügt oder entfernt wurden.
Mfg ^^
 
Zurück