Z-Order bei CDC?
-
Hi,
wie kann ich die Z-Order setzen?
Mein problem ist, es werden einige dinge gezeichnet und im nachhinein muss ich über den ganzen raum nen background farbe legen welche halt unter all den zeichnungen gemalt werden soll..
danke im voraus :-),
Mike
-
Was spricht denn dagegen, ERST den Hintergrund zu zeichnen und danach die "einigen Dinge" im Vordergrund?
-
der hintergrund wird leider erst im nachhinein bestimmt.. :-\
gruss,
mike
-
Hmm, dann könntest du die VG-Elemente erstmal in einen Memory-DC zeichnen und nach dem Hintergrund rüberkopieren.
(oder du stellst die Reihenfolge der Berechnungen/Zeichnungen etwas um)
-
erstmal mit standardhintergrund zeichnen
sobald dann ein neuer hintergrund gesetzt wird, einfach alles neu zeichnen lassen mit dem BG zuerst
-
Die WinGDI hat keinen z-Buffer! Das einfachste ist wohl der Vorschlag von Mr Evil
-
ich glaube ich hab was gefunden mal schauen ob es so geht..
pDC->SetBkColor(RGB(253,255,277));
pDC->SetBkMode(OPAQUE);
-
hmm misst, ich setzt die 2 methoden aber es passiert nix :-\ auch nicht in einem SDI Testprojekt.. mist :p
-
kennt sich jemand mit den 2 methoden aus und könnte mir erklären warum ich keinen background hinbekomm bei einem standard SDI anwendung, vom wizard generiert?
pDC->SetBkColor(RGB(253,255,277)); pDC->SetBkMode(OPAQUE);cheers
-
T1c4L schrieb:
wie kann ich die Z-Order setzen?
Mein problem ist, es werden einige dinge gezeichnet und im nachhinein muss ich über den ganzen raum nen background farbe legen welche halt unter all den zeichnungen gemalt werden soll..
Wenn es sich um Controls handelt wäre WS_CLIPCHILDREN einen Blick wert!
Wenn es sich um Controls handelt wird die Z-Order durch SetWindowPos oder die Reihenfolge des Erzeugens definiert!Andernfalls musst Du eben den Hintergrund zuerst zeichnen.