MDI mit CRichEditView, Problem beim Drucken



  • Servus,
    Ich habe ein kleines MDI Projekt mit CRichEditView. Das ganze ist
    ein kleiner Editor (Übung).

    Jetzt habe ich angefangen mich mit der Druckerei zu beschäftigen.
    Setenränder setzen mit SetMargin und Ausdruck funktioniert auch.
    Mein Problem ist jedoch, dass der Drucker immer ein Blatt zuviel
    ausspuckt, d.h. nach dem letzten bedruckten Blatt kommt immer
    noch ein leeres Blatt hinterher.

    Das ist der momentane Code für das Drucken

    BOOL CRichPrintView::OnPreparePrinting(CPrintInfo* pInfo)
    { 
        SetMargins(CRect(720, 720, 720, 720));
    
        return DoPreparePrinting(pInfo);
    }
    void CRichPrintView::OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo)
    {
        CRichEditView::OnBeginPrinting(pDC, pInfo);
    }
    void CRichPrintView::OnEndPrinting(CDC* pDC, CPrintInfo* pInfo)
    {
        CRichEditView::OnEndPrinting(pDC, pInfo);
    }
    

    Wenn ich

    BOOL CRichPrintView::OnPreparePrinting(CPrintInfo* pInfo)
    {
        SetMargins(CRect(720, 720, 720, 720));
    
        pInfo->SetMaxPage(1);
    
        return DoPreparePrinting(pInfo);
    }
    

    eintrage, bekomme ich nur eine Seite, was logisch ist.

    Wie bekomme ich raus wieviele Seiten mein Dokument hat, damit ich das Ganze mit SetMaxPage() angeben kann.

    Ich hoffe ich habe mich verständlich ausgedrückt.

    TinTin


Anmelden zum Antworten