Graphik neuzeichnen nachdem Fenster überdeckt wurde
-
Hi,
ich habe 2 Probleme:
1.) Wie schaffe ich es das nach dem ersten Laden eines Applets die Funktion zum Zeichnen einer Grafik, in einer von Canvas abgeliteten Klasse aufgerufen wird?
2.) Was muss ich tun damit, diese Funktion jedesmal neu aufgerufen wird, nachdem das BrowserFenster minimier bzw überdeckt wurde um die Graphik neu zu zeichnen?
mfg
-CodeMaster-
-
dafür gibts doch
repaint();
oder?
-
Das problem ist repaint wird ja nicht automatisch unter den oben genanten bedingungen aufgerufen!
Damit funktioniert es nicht!
mfg
-CodeMaster-
-
Der Aufruf geschieht eigentlich automatisch ansonsten lässt sich mittels repaint ein Neuzeichnen erzwingen.
-
Das Problem besteht immer noch:
bsp.:
public void repaint(Graphics g)
{
int width = getSize().width;
int height = getSize().height;g.setColor(Color.black);
setBackground(Color.WHITE);g.drawLine(2, 2, 10, 10);
}Zeichnet keine Linie!!!
wie wende ich repaint richtig an???
mfg
-CodeMaster-
-
du musst nicht repaint() neu machen sondern paint(Graph... g) neu schreiben.
repaint ist schon gemacht.
also einfach:frame.repaint();
PS:Hab noch nie mit repaint() gearbeitet, kann sein das ich hier shit(schuldigung) erzählt habe. also probiers einfach mal.
bye donay
-
Wo ist das Problem?
Die paint(Graphics g) einfach überlagern. repaint(9 wird inder Regel automatisch aufgeruifen, wenn das Fenster verdeckt wird. Man natürlich auch repaint() explizit callen. Für ganz seltene Fälle filft ein invalidate().Wir reden doch hier über AWT-Bibliotheken, oder?
-
Habs hinbekommen, danke!!!
Das prob war ich darf in der funktion nicht nochmal den Gerätekontext holen.
mfg
-CodeMaster-