joseph183
06-12-2015, 05:15:45
hola de paso bueno dire que ando medio perdido pero esto no me quedo claro al imprimir dbgrid quiero que se imprima en un hoja digamos ya membretada horizontalmente y que queden las rayas de la tabla no se le pueda agregar al dbgrid el código es este
procedure TForm2.Button1Click(Sender: TObject);
var
x,i:Integer;
begin
Printer.BeginDoc;
x:=DBGrid1.DataSource.DataSet.RecordCount;
for i := 1 to x do
begin
Printer.Canvas.TextOut(30,(i*2)+30,DBGrid1.DataSource.DataSet.FieldByName('Nombre').AsString+' '+
DBGrid1.DataSource.DataSet.FieldByName('apellidos').AsString+' '+DBGrid1.DataSource.DataSet.FieldByName('Hora/e').AsString);
DBGrid1.datasource.DataSet.Next;
end;
printer.EndDoc;
showmessage('Impresión terminada');
end;
y bueno en los printed me falta agregar lo demás h/e, h/s y anexo como le pongo un limitador al dbgrid que solo me aparezca no se minimo 1 registro y máximo 50, o menos ya que la impresión no se bien cuantas líneas de usuarios se puedan imprimir calculo no se 20 u 30 registros ya que no olvidar que la hoja le pueda poner algún membrete, además en la parte de abajo del dbgrid poner una flechitas o next page, y return page o es asi return page next page espero entenderme, vale gracias :rolleyes: :rolleyes:
procedure TForm2.Button1Click(Sender: TObject);
var
x,i:Integer;
begin
Printer.BeginDoc;
x:=DBGrid1.DataSource.DataSet.RecordCount;
for i := 1 to x do
begin
Printer.Canvas.TextOut(30,(i*2)+30,DBGrid1.DataSource.DataSet.FieldByName('Nombre').AsString+' '+
DBGrid1.DataSource.DataSet.FieldByName('apellidos').AsString+' '+DBGrid1.DataSource.DataSet.FieldByName('Hora/e').AsString);
DBGrid1.datasource.DataSet.Next;
end;
printer.EndDoc;
showmessage('Impresión terminada');
end;
y bueno en los printed me falta agregar lo demás h/e, h/s y anexo como le pongo un limitador al dbgrid que solo me aparezca no se minimo 1 registro y máximo 50, o menos ya que la impresión no se bien cuantas líneas de usuarios se puedan imprimir calculo no se 20 u 30 registros ya que no olvidar que la hoja le pueda poner algún membrete, además en la parte de abajo del dbgrid poner una flechitas o next page, y return page o es asi return page next page espero entenderme, vale gracias :rolleyes: :rolleyes: