Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Zeilenwechsel bei Drucken von Steuerelementen

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
05.04.2004, 11:30 Uhr
~vc_newby
Gast


moin,
Ich hab da ein Problem, auf das ich schon sehr oft im Netz gestoßen bin, auf das ich aber bisher noch keine vernünftige Lösung gefunden habe.
Ich möcht mittels cprintdlg einige Steuerelemente meines Dialoges drucken.
Das funzt auch schon ganz gut, nur leider erkennt er keine Zeilenwechsel innerhalb der Steuerelemente.
Egal ob ich \r\n oder nur \n benutze.

mein Code sieht folgendermaßen aus:

C++:
void Auswertdialog::OnOK()
{
    
    UpdateData(TRUE);

    //////////////////////////////////////////////////Drucken/////////////////
    // TODO: Zusätzliche Prüfung hier einfügen
    // Ein CPrintDialog-Objekt konstruieren

    CPrintDialog dlgPrint(FALSE,PD_ALLPAGES,this);

    if (dlgPrint.DoModal()==IDOK)
    {
       // Den Drucker-DC vom Dialogfeld mit einem
       // CDC-Objekt verbinden
       CDC dcPrint;
       dcPrint.Attach(dlgPrint.GetPrinterDC());

       // Eine DOCINFO-Struktur erzeugen und füllen
       DOCINFO myPrintJob;
       myPrintJob.cbSize = sizeof(myPrintJob);
       myPrintJob.lpszDocName = "MeinDruckAuftrag";
       myPrintJob.lpszOutput = NULL;
       myPrintJob.lpszDatatype = NULL;
       myPrintJob.fwType = NULL;

       // Ausdruck des Dokuments starten
       if (dcPrint.StartDoc(&myPrintJob)>=0)
      {

          // Eine Seite beginnen
          dcPrint.StartPage();

          // Zeichnen beginnen
         dcPrint.TextOut(1800,0,"Auswertungsprotokoll");
         dcPrint.TextOut(1800,100,"--------------------");

         dcPrint.TextOut(0,300, m_strauswert1);
         dcPrint.TextOut(2500,300, m_strauswert2);
         dcPrint.TextOut(3500,300, m_strauswert3);




         // Seite auswerfen
         dcPrint.EndPage();

        // Dokument schließen
        dcPrint.EndDoc();
     }

     // Druckergerätekontext löschen
     dcPrint.DeleteDC();
  }

// Mit Standardverarbeitung von OnOK fortfahren


  CDialog::OnOK();
}





m_strauswert sind einfache textfelder eines Dialoges, die mit mehrzeiligem Text gefüllt sind.

Vielleicht weiß ja jemand Rat.

Mfg

Carsten
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
05.04.2004, 12:20 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


in zeilen zerlegen und dann per schleife jede zeile um z.b 30px weiter unten ausgeben.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
05.04.2004, 12:43 Uhr
~vc_newby
Gast


hallo

diese Idee hatte ich auch, aber leider sind das sehr viele Stererelemente und dann wäre das doch recht umständlich.

gibt es keine einfachere Lösung?
Das muß doch irgendeinen Grund dafür geben, dass er diese Steuerzeichen nicht erkennt bzw. ignoriert.

Mfg

carsten
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
05.04.2004, 12:47 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hast du mal DrawText/-Ex(...) probiert?
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
05.04.2004, 16:52 Uhr
~vc_newby
Gast


hallo,
ich weiß zwar nicht, was dein /-ex bedeuten soll, aber mit drawtext geht das tatsächlich.
Warum, ist mir zwar immer noch nocht klar, aber egal, hauptsache es funzt...
ist zwar ein wenig umständlich, weil man sich da vorher noch ein crect object erzeugen muß, aber immer noch besser als einen String nach crlf auszulesen.

Mfg

carsten
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
05.04.2004, 18:38 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


ich meinte DrawText oder DrawTextEx
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
06.04.2004, 08:33 Uhr
~vc_newby
Gast


gibt es drawtextex als cdc Memberfunktion?
habe ich zumindest nicht gefunden

mfg

carsten
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


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: