使用PrintDBGridEh进行打印 (转)

使用PrintDBGridEh进行打印 (转)

 

if not ADOQuery1.Active then exit;
  if ADOQuery1.RecordCount<=0 then exit;
   
  PrintDBGridEh1.PageHeader.CenterText.Clear;
  PrintDBGridEh1.PageHeader.CenterText.Add(trim(edTiTle1.Text));
  PrintDBGridEh1.PageHeader.CenterText.Add('');
  PrintDBGridEh1.PageHeader.CenterText.Add(trim(edTiTle2.Text));
  PrintDBGridEh1.PageHeader.CenterText.Add('');
  PrintDBGridEh1.PageHeader.CenterText.Add('数据日期:' + datetimetostr(DateTimePicker1.DateTime
        + DateTimePicker3.DateTime - 1) + ' 至 '
        + datetimetostr(DateTimePicker2.DateTime + DateTimePicker4.DateTime - 1));
  PrintDBGridEh1.PageFooter.CenterText.Clear;
  PrintDBGridEh1.PageFooter.CenterText.Add
  ('负责人:        制表人:'+OpName+'      制表日期:'+DatetimeTostr(Date)+'    第&[Page]页' ); //第&[Page]页   共&[Pages]


  if (Sender as TSpeedButton).Caption = '打印(&P)' then
    PrintDBGridEh1.Print
  else
    PrintDBGridEh1.Preview;

Ehlib DBGridEh中怎样进行横向打印 / 打印预览?

答 : TPrintDBGridEh 并没有专门的属性来设置页面特性。在调用打印或打印预览方法前,你必须设置你将要执行打印的打印源( Orientation )。
uses ......, PrViewEh, Printers.
..............
procedure TForm1.bPreviewClick(Sender: TObject);
begin
PrinterPreview.Orientation := poLandscape;
PrintDBGridEh1.Preview;
end ;

PrintDbGrideh 打印数据

PrintDbGrideh1.BeforeGridText.Clear;//添加
PrintDbGrideh1.BeforeGridText.Add( '订单 ');
PrintDBGridEh1.PageFooter.CenterText.Text:='第 &[Page] 页/共 &[Pages] 页';
PrinterPreview.Orientation:= poLandscape;           //横向打印:需要引用 Printers 单元
PrintDBGridEh1.Options :=[pghFitGridToPageWidth];  //将所有列缩放为一页
PrintDBGridEh1.Preview; 

posted on 2019-01-26 12:21  newlives  阅读(677)  评论(0编辑  收藏  举报