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..


Anmelden zum Antworten