[wxWidgets] OnPaint - Event manuell aufrufen
-
Hallo zusammen,
kann man eine OnPaint - Methode manuell aufrufen?
Wenn ich z.B. in der OnAbout - Methode bin und möchte daraus gleich in die OnPaint Methode (der gleichen Klasse wie z.B. MyFrame) springen.
geht das? Und wenn ja, wie?
Vielen Dank für die Antworten
Gruß
-
Nicht direkt.
Aber wenn du einen Repaint des Fensters erzwingen willst, kannst du einfach Update() bzw. Refresh() aufrufen,
um das Fenster zu aktualisieren.Evtl. müsstest du dein Problem auch etwas genauer beschreiben
-
Im Prinzip geht es gerade darum, dass ich einen wxTimer ausprobieren möchte.
Im Handbuch zu wxWidgets gibt es ein kleines Beispiel das auch funktioniert.Jetzt möchte ich, dass ich ein Frame zeichne und diesen auch angezeigt bekomme und danach soll der Timer starten. Wenn ich dann in die OnTimer-Methode gelange möchte ich dann entsprechnd andere Eventmethoden wie z.B. OnPaint aufrufen.
Kann mir vielleicht einer ein Beispiel zeigen wie man das umsetzen kann?!
Vielen Dank!
-
Generell sollte aller Code zum Zeichnen in der OnPaint Methode liegen, oder in einer Methode, die
von dort aus aufgerufen wird (DoDraw(wxDC& dc)).In deinem Event Handler für wxTimer solltest du am besten Refresh() oder Update() aufrufen, um das Fenster neu zu zeichnen.