笔者设计了一段程序。首先在窗体上添加一个DBGrid来显示我们所要打印的数据,在这里,DBGrid不只是起到显示数据的作用,而且用户对DBGrid作的调整,例如改变了各字段的排列顺序,各字段的显示宽度等,都将直接反映到打印结果中去,也就是说,我们实际上就是要把DBGrid的内容直接输出到打印机。以下程序在Win 98+Delphi 4下编译通过,代码如下:
procedure TForm1.Button2Click(Sender: TObject);const LeftBlank=1; //定义页边距,单位厘米 RightBlank=1; TopBlank=1; BottomBlank=1;var PointX,PointY:integer; PointScale,PrintStep:integer; s:string; x,y:integer; i:integer;begin //获取当前打印机的分辨率PointX:=Trunc(GetDeviceCaps(Printer.Handle,LOGPIXELSX)/2.54); PointY:=Trunc(GetDeviceCa...[ 查看全文 ]