Announcement

Collapse
No announcement yet.

Drucken ... ein Beispiel von Borland aber wohin?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Drucken ... ein Beispiel von Borland aber wohin?

    Hallo,

    Ich habe ein Programm geschrieben und jetzt wollte ich das man das was man in RichEdit reinschreibt auch aus Drucken kann. Das Dialog ''PrintDialog'' ist schon eingebunden. Da habe ich ein Beispiel gefunden aber ich weiss nicht wo es hinschreiben soll da immer ein fehler kommt.

    E2141 Fehler in der Deklarationssyntax

    Code:
    procedure TForm1.Button1Click(Sender:TObject);  <--- Da bleibt er hängen
    
    var
      I, Start, Stop: Integer;
    begin
    PrintDialog1.Options := [poPageNums, poSelection];
    PrintDialog1.FromPage := 1;
    PrintDialog1.MinPage := 1;
    PrintDialog1.ToPage := PageControl1.PageCount;
    PrintDialog1.MaxPage := PageControl1.PageCount;
    if PrintDialog1.Execute then
      begin
      { Druckbereich festlegen }
      with PrintDialog1 do 
      begin
        if PrintRange = prAllPages then
          begin
    
          Start := MinPage - 1;
          Stop := MaxPage - 1;
          end
        else if PrintRange = prSelection then
          begin
          Start := PageControl1.ActivePage.PageIndex;
          Stop := Start;
          end
        else  { PrintRange = prPageNums }
          begin
          Start := FromPage - 1;
          Stop := ToPage - 1;
          end;
      end;
      { jetzt den gewünschten Bereich drucken }
      with Printer do
    
        begin
        BeginDoc;
        for I := Start to Stop do
          begin
          PageControl1.Pages[I].PaintTo(Handle, 10, 10);
          if I <> Stop then
            NewPage;
          end;
        EndDoc;
        end;
      end;
    end;
    
    void __fastcall TForm1::Button1Click(TObject *Sender)
    
    {
      PrintDialog1->Options.Clear();
      PrintDialog1->Options << poPageNums << poSelection;
      PrintDialog1->FromPage = 1;
      PrintDialog1->MinPage = 1;
      PrintDialog1->ToPage = PageControl1->PageCount;
      PrintDialog1->MaxPage = PageControl1->PageCount;
      if (PrintDialog1->Execute())
      {
        int Start, Stop;
        // Vom Benutzer gewünschten Druckbereich ermitteln
        switch (PrintDialog1->PrintRange)
        {
          case prSelection:
    
            Start = PageControl1->ActivePage->PageIndex;
            Stop = Start;
            break;
          case prPageNums:
            Start = PrintDialog1->FromPage - 1;
            Stop =  PrintDialog1->ToPage - 1;
            break;
          default:  // prAllPages
            Start = PrintDialog1->MinPage - 1;
            Stop = PrintDialog1->MaxPage - 1;
            break;
        }
        // Seiten drucken
        Printer()->BeginDoc();
        for (int i = Start; i <= Stop; i++)
    
        {
          PageControl1->Pages[i]->PaintTo(Printer()->Handle, 10, 10);
          if (i != Stop)
            Printer()->NewPage();
        }
        Printer()->EndDoc();
      }
    }
    Fehlt eventuell noch ein #include Befehl ?
    Die <Printers.hpp> ist schon eingebunden.

    Ich hoffe das mir einer helfen kann
    Danke dann im vorraus
    MfG Rave

    -Jeder fängt mal klein an

  • #2
    Sehe hier Delphicode kein C++??

    http://www.marquardtnet.info/cecke/q...quicky_30.html
    Christian

    Comment


    • #3
      Originally posted by Rave View Post
      ... das was man in RichEdit reinschreibt auch aus Drucken kann.
      Ansistring Caption = "mein dokument";

      RichEdit1->Print ( Caption );

      Comment

      Working...
      X