ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
735
735
EMPFEHLEN
-
18.08.05 09:30 #1
- Registriert seit
- Aug 2005
- Beiträge
- 1
warum geht dieser code nicht? ich versuche ein stringgrid zu drucken
ich habe es in PrintDialog1 reingeschreiben
und unter uses steht printers
var zeile, x, y, a, b: integer;
breite, hoehe, randlinks, randoben: integer;
begin
if PrintDialog1.Execute then begin
Printer.BeginDoc; //Druckjob beginnen
//Blattgröße in 1/10 mm ermitteln:
breite:=GetDeviceCaps(Printer.Canvas.Handle, HORZSIZE)*10;
hoehe:=GetDeviceCaps(Printer.Canvas.Handle, VERTSIZE)*10;
randlinks:=250; //2,5 cm
randoben:=250; //2,5 cm
x:=randlinks;
y:=randoben*-1;
for zeile:=0 to grid.rowCount-1 do begin
if -y>(hoehe-2*randoben) then begin
y:=randoben*-1;
Printer.NewPage;
end;
SetMapMode(Printer.Canvas.Handle, MM_LOMETRIC); //Umstellen auf 1/10 mm
//Schrift-Einstellungen:
Printer.Canvas.Font.Name:='Courier New';
Printer.Canvas.Brush.Color:=clWhite;
Printer.Canvas.Font.Height:=50; //5 mm
a := grid.rowcount;
b := grid.ColCount;
if y=-randoben then begin
Printer.Canvas.Font.Style:=[fsbold];
Printer.Canvas.TextOut(x, y, 'Seite '+
IntToStr(Printer.PageNumber));
Printer.Canvas.Font.Style:=[];
y:=y-Printer.Canvas.TextHeight(grid[rowcount]]);
end;
Printer.Canvas.TextOut(x, y, grid[rowcount];
y:=y-Printer.Canvas.TextHeight(grid.rowcount);
end;
Printer.EndDoc;
end;
end;
-
Hallo,
du solltest
1. deinen Code formatieren [ CODE] .... [ /CODE] (ohne Leerzeichen nach [)
2. uns wissen lassen, was nicht geht z. B. Felermeldung angeben
Ähnliche Themen
-
Drucken in SWT
Von Tobias Köhler im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 0Letzter Beitrag: 15.08.07, 14:09 -
Drucken in C#
Von Codebug im Forum .NET Windows FormsAntworten: 2Letzter Beitrag: 14.07.07, 16:11 -
Drucken
Von SirWayne im Forum JavaAntworten: 0Letzter Beitrag: 02.06.07, 19:33 -
drucken
Von DarkSean im Forum Visual Basic 6.0Antworten: 3Letzter Beitrag: 10.10.05, 00:27 -
Drucken
Von IFR im Forum .NET ArchivAntworten: 2Letzter Beitrag: 14.03.05, 09:13





Zitieren
Login





