SDI projekt als *.*bmp speichen
-
Hello Zusammen,
Ich habe eine SDI projekt schon gestellt.Und ich habe einige Information darauf gemahlt.Jetzt moechte ich als *.*bmp speichen.Es ist moeglich?Wenn moeglch ist,kann jemand den Methode mir verraten.
MFG
Li
-
Na mit einer einzelnen Methode wirst du nicht fündig werden.
Ich denke du zeichnest den Fensterinhalt deiner Applikation in der OnDraw - Methode des CView's. Dann wird es in etwa folgendermasen gehen:
1. Erzeuge mit CBitmap::CreateCompatibleBitmap( ... ) eine Bitmap die so groß ist wie das Fenster und kompatibel zum übergebenen DC des Fensters ist.
2. Erzeuge dir einen Memory-DC mit CDC::CreateCompatibleDC
3. Selektiere die Bitmap von (1) in den DC (2) mit CDC::SelectObject
4. Zeichne den Hintergrund im DC (2) entsprechend der Hintergrundfarbe des Fensters ( z.B. mit FillSolidRect oder PatBlt )
5. Rufe mit diesem DC die OnDraw-Methode deines Fensters auf
6. Selektiere im Memory-DC wieder die alte Bitmam und zerstöre den DC wieder
7. Speichere das CBitmap - Objekt ( Dafür gibts jede Menge Routinen im Netz ) und IMHO in den Beispielen der MSDN.
8. Freigabe aller allozierten Ressourcen.
Fertig.
Gruß
tvdog
-
danke...
du bist ganz nett ich versuch mal mit deinem Methode..