Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - OnActivate und OnDeactivate


julbo - Mo 28.10.02 02:52
Titel: OnActivate und OnDeactivate
Was bewirken die Ereignisse OnActivate und OnDeactivate bei einer Form?? Diese werden bei mir nicht aufgerufen. (Ich habe spassenshalber mal eine ShowMessage-Procedure integriert)

Oder anders gefragt: Ich suche ein Ereignis, welches automatisch aufgerufen wird, wenn dieses Fenster nach vorne geholt wird (es aktiv wird).

Und da ich schon frage: Gibt es eine einfachere und schnellere Methode alle gezeichneten Objekte, nachdem diese von überlappenden Fenstern gelöscht wurden, auf einer PaintBox (Canvas) wieder zu aktualisieren, ohne alle Objekte neu zeichnen zu müssen?

[später hinzugefügt]
An die Verwalter dieses Forums: Ist es möglich diesen Beitrag in den Bereich "sonstiges" zu verschieben? Aus mir unerklärlichen Gründen ist dieser in "Dateizugriff" gelandet. Danke.


LCS - Mo 28.10.02 12:05

Hi
julbo hat folgendes geschrieben:

Oder anders gefragt: Ich suche ein Ereignis, welches automatisch aufgerufen wird, wenn dieses Fenster nach vorne geholt wird (es aktiv wird).

Genau für sowas ist OnActivate / OnDeactivate da. Allerdings steht dazu in der OnlineHilfe
Borland hat folgendes geschrieben:

Übergibt Windows den Fokus von einer anderen Anwendung, wird das Ereignis OnActivate des Anwendungsobjekts (TApplication), nicht des Formulars ausgelöst.

Deswegen sieht das bei dir wahrscheinlich so aus, als würde es nicht funktionieren.

Gruss Lothar


iKilledKenny - Mo 28.10.02 14:53

Zitat:
Und da ich schon frage: Gibt es eine einfachere und schnellere Methode alle gezeichneten Objekte, nachdem diese von überlappenden Fenstern gelöscht wurden, auf einer PaintBox (Canvas) wieder zu aktualisieren, ohne alle Objekte neu zeichnen zu müssen?


du kannst deine objekte auf ein metafile zeichnen und dann nur noch das metafile im onpaintwindow von der paintbox abspielen...

grüße
alex


Maggi - Mo 28.10.02 16:04

Hi,

wie wäre es wenn du es einfach mit der OnShow versuchst, die sollte reichen hoffe ich.... :wink:

Gruß

Maggi