Danielku15
Erfahrenes Mitglied
Hallo.
Ich zapfe im bei meinem Forrm das WM_NCPAINT Event an um in den Non-Client Bereich meines Forms zu zeichnen. Nun möchte ich eine Fade-Animation für den Hover-Effekt hinzufügen. Nun ist mein Problem folgendes: Im Client Bereich kann ich über Invalidate() das Neuzeichen eines Bereichs auslösen. Nur wie erreiche ich dasselbe für den Non-Client Bereich.
Die Native-Methoden SetWindowPos und RedrawWindow ermöglichen zwar das Neuzeichnen, aber diese Methoden sorgen dafür dass die Darstellung des Formulars kurz unterbrochen wird. Dadurch zeichnet sich der Fade-Effekt sehr langsam und das Form reagiert nur sehr langsam. An den Zeichenfunktionen kann es nicht liegen denn beim Ändern der Formgröße wird die Oberfläche auch schnell gezeichnet.
Kennt jemand eine Möglichkeit den Non-Client Bereich des Forms schnell neuzuzeichnen.
Eventuell indem spezielle WindowMessages an das Form gesendet werden?
Gruß Daniel
Ich zapfe im bei meinem Forrm das WM_NCPAINT Event an um in den Non-Client Bereich meines Forms zu zeichnen. Nun möchte ich eine Fade-Animation für den Hover-Effekt hinzufügen. Nun ist mein Problem folgendes: Im Client Bereich kann ich über Invalidate() das Neuzeichen eines Bereichs auslösen. Nur wie erreiche ich dasselbe für den Non-Client Bereich.
Die Native-Methoden SetWindowPos und RedrawWindow ermöglichen zwar das Neuzeichnen, aber diese Methoden sorgen dafür dass die Darstellung des Formulars kurz unterbrochen wird. Dadurch zeichnet sich der Fade-Effekt sehr langsam und das Form reagiert nur sehr langsam. An den Zeichenfunktionen kann es nicht liegen denn beim Ändern der Formgröße wird die Oberfläche auch schnell gezeichnet.
Kennt jemand eine Möglichkeit den Non-Client Bereich des Forms schnell neuzuzeichnen.
Eventuell indem spezielle WindowMessages an das Form gesendet werden?
Gruß Daniel