有report单元中: public
{ Public declarations }
//加上这个
class procedure PrintTbsjRpt(SJH: string; isPreview: boolean = true; isTd: boolean = True);
//参数 isPreview是否预览 isTd 为是否套打
end;var
frmZcpzrpt: TfrmZcpzrpt;implementationuses dm_pxcx, main, support;{$R *.dfm}{ TfrmZcpzrpt }class procedure TfrmZcpzrpt.PrintTbsjRpt(SJH: string; isPreview, isTd: boolean);
var
i: integer;
begin
with Create(nil) do
try
if isTd then
begin
for i := 0 to ComponentCount - 1 do
begin
if (Components[i] is TqrShape) then
(Components[i] as Tqrshape).Enabled := not (isTd);
if (Components[i] is TqrLabel) then
if (Components[i] as TqrLabel).Tag <> 100 then
(Components[i] as TqrLabel).Enabled := not (isTd);
end;
end;
..............................
if isPreview then
qrTbsj.Preview
else
qrTbsj.Print;
end;
end;
finally
................
free;
end;
end;调用:
procedure TfrmShqz.btnPrintClick(Sender: TObject);
begin
TfrmZcpzRpt.PrintTbsjRpt(OrdsMain.fieldbyname('sjh').AsString, false, true);
end;
{ Public declarations }
//加上这个
class procedure PrintTbsjRpt(SJH: string; isPreview: boolean = true; isTd: boolean = True);
//参数 isPreview是否预览 isTd 为是否套打
end;var
frmZcpzrpt: TfrmZcpzrpt;implementationuses dm_pxcx, main, support;{$R *.dfm}{ TfrmZcpzrpt }class procedure TfrmZcpzrpt.PrintTbsjRpt(SJH: string; isPreview, isTd: boolean);
var
i: integer;
begin
with Create(nil) do
try
if isTd then
begin
for i := 0 to ComponentCount - 1 do
begin
if (Components[i] is TqrShape) then
(Components[i] as Tqrshape).Enabled := not (isTd);
if (Components[i] is TqrLabel) then
if (Components[i] as TqrLabel).Tag <> 100 then
(Components[i] as TqrLabel).Enabled := not (isTd);
end;
end;
..............................
if isPreview then
qrTbsj.Preview
else
qrTbsj.Print;
end;
end;
finally
................
free;
end;
end;调用:
procedure TfrmShqz.btnPrintClick(Sender: TObject);
begin
TfrmZcpzRpt.PrintTbsjRpt(OrdsMain.fieldbyname('sjh').AsString, false, true);
end;
解决方案 »
- 在WIN7中,如何代码实现,对一个文件的完全控制或取得它的所有权?
- CodeManager v2.0.0 (源码管理器)
- Dateformate 问题请教
- 将StringList转换成分号分隔的字符 和 反向的函数,请求优化,不怕代码难懂__这是新版本旧的有错误。
- TClientSocket的问题
- 如何写个程序获得IE地址栏里的URL地址~
- 如何判断数据流中的图片数据是bmp文件或是jpeg文件?
- 想用Delphi实现Web用户数量的限制,请高手提供帮助,谢谢。
- 在DFW上搞不定的“IE地址栏的编码问题”
- 好消息,我解决了在 ACCESS 数据库中把保存的 JPG 文件再读到 IMAGE 上的方法
- 如果不使用DB系列控件。。。。
- ◎◎◎◎没什么答谢的,送10本书给大家吧◎◎◎◎
什么时候你的功能实现了,麻烦给我发一份了,[email protected]谢谢
引用( 回复人 jijun:)在QReport中设计,要在什么位置打印数据,就在什么位置放置QRLabel或QRDBText或QRExpr。
————————————————————————————————
难道我还要建数据库么,那..........!!!!!!!!!
如:
uses printers;
...
begin
with Printer do
begin
BeginDoc // 开始打印
Canvas.textout(100,100,'I test ');
.......
EndDoc //结束打印
end;
end;
当然之前还要对打印机设置,进行走纸控制,
用 API或Tprinter都可以,才能精确打印。
“taogou(失去一切,才知道自己只是逃狗)” 你怎弄的,教俺!!!
frReport1.LoadFromFile('xsx.frf');
frReport1.PrepareReport;
frReport1.PrintPreparedReport('',1,False,frAll)
继续寻求帮助
-_-!!用Tprint.Canvas
如何确定打印内容在票据上的坐标!!!!!