Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » WM_PAINT bzw. doppelte Pufferung

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
09.10.2006, 15:05 Uhr
~Herb
Gast


Hallo Leute,
ist vielleicht 'ne blöde Frage, aber wie genau arbeite WM_PAINT?
Also, ich habe eine Fenster, und in dem Fenster sind weitere Steuerelemente (also eigentlich weitere Fenster) untergebracht. Wenn dieses Fenster jetzt die WM_PAINT Message bekommt, müsste es doch auch eine WM_PAINT Message an die (vom Update betroffenen) Steuerelemente senden. Ist es iregendwie möglich, dass das Update in einem anderen Gerätekontext stattfindet und dieser nachher komplett übernommen wird - also doppelte Pufferung. Das Problem dabei ist: ich zeichne selbst nichts, sind alles Standardsteuerelemente.
Oder ist es möglich, ein Fenster (bzw. dessen Client-Area), das von einem Steuerlement komplett ausgefüllt ist, garnicht zu zeichnen (hab ich probiert, allerdings war dann das Steuerlement auch nicht mehr sichtbar). Jemand eine Idee?

Danke im voraus.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
09.10.2006, 16:06 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


öhm also ich habe jetzt nicht verstanden was du willst
WM_PAINT arbeitet gar nicht sondern ist einfach nur eine Nachricht die an dein Fenster gesendet wird sobald es neu gezeichnet werden muss.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
10.10.2006, 18:21 Uhr
~Herb
Gast


Schon klar dass WM_PAINT selbst nichts macht, bin im Formulieren nicht so der Held ;-).
Was ich eigentlich wissen will mal als konkretes Beispiel:
Angenommen ich habe einen Dialog mit zwei Buttons und einem Textfeld (oder was auch immer). Wenn der Dialog jetzt die WM_PAINT Message erhält wird er neu gezeichnet (mit dem DefaultWndProc). Angenommen, der komplette Client Bereich des Dialogs wird neu gezeichnet, dann müssen ja auch die Steuerelemente (Zwei Buttons + Textfeld...) neu gezeichnet werden.
Das war eigentlich meine erste Frage: Wer bzw. Was sendet in diesem Fall die WM_PAINT Message an meine Steuerelemente. Wird das in der Behandlungsroutine für WM_PAINT im Dialog gemacht oder wo anders?
Meine Zweite Frage: Kann ich ein Standardsteuerelement doppelt Puffern, d.h. in einem DeviceContext im Speicher zeichnen lassen? Müsste dann doch auch in der Behandlung von WM_PAINT passieren, oder? Dazu müsste ich halt wissen, was ein Standardsteuerelement (z.B. ein Button) alles aufruft damit es gezeichnet wird.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: