Einzelnen Beitrag anzeigen

verkouter

Registriert seit: 29. Dez 2004
64 Beiträge
 
Delphi 2010 Architect
 
#4

AW: Nur ausgewählte Einträge einer Listview drucken

  Alt 3. Okt 2018, 17:16
Hallo Kodezwerg,
habe deinen Code etwas umgeändert.

Delphi-Quellcode:
procedure TForm1.ToolButton8Click(Sender: TObject);
Var
 LineHeight,i,j,Y,X:Integer;
begin
if PrintDialog1.Execute then
begin
Printer.Title := 'Mischungsliste';
Printer.Copies := 1;
Printer.Orientation := poLandscape;
 With Printer do
  begin
   BeginDoc;
   LineHeight:=Round(Canvas.TextHeight('H')*1.2);
   Y:=0;
   for i:=0 to listview1.Items.Count-1 do
   if listview1.Items[i].Checked then
    begin
     If Y+LineHeight>PageHeight Then
      begin
       NewPage;
       Y:=0;
      end;
// Canvas.TextOut(0,Y,lv1.Items[i].Caption);
       With listview1.Items[i] do
        begin
          X:=0;
          printer.Canvas.TextOut(X*PageWidth Div listview1.Width,Y,Caption);
          for j:=0 to SubItems.Count-1 do
           begin
             X:=X+listview1.Columns[j].width;
             printer.Canvas.TextOut(X*PageWidth Div listview1.Width,Y,subitems[j]);
           end;
        end;
     Y:=Y+LineHeight;
    end;
   EndDoc;
  end;
end;
end;
Mir war schon klar, daß ich eine Abfrage machen muß, die prüft ob Checkbox an oder aus ist. Der Code den ich verwände,baut soweit ich ihn verstanden habe, die Formatierung
spaltenweise auf, was eine Abfrage zeilenweise schwierig macht. Ich wollte den fertigen Ausdruck aber nicht nochmal komplett neu programmieren.
  Mit Zitat antworten Zitat