关于fastreport直接打印的问题

tybb 2005-09-20 03:00:18

我在打印后面接着有程序处理的代码。。。
我想在成功打印后执行这些代码,不成功就不执行
现在问题是
在直接打印时遇到找不到打印机的错误。。。
但又无法捕捉到错误。。。
所以现在是不论打印是否成功都执行了后面的代码。。
高手们有什么良策?
...全文
433 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
tybb 2005-09-29
  • 打赏
  • 举报
回复
up
bendev 2005-09-28
  • 打赏
  • 举报
回复
捕捉找不到打印机的错误可以通过创建一个TPrinter对象,然后看属性Printers.Count检查是否安装了打印机。
tybb 2005-09-28
  • 打赏
  • 举报
回复
to bendev
这个方法不错,问题是打印机是安装了的,只是有时没有连接上出错,
需要做一个提示和一个可以先择另一个已连接的打印机的功能。
可否详细说说方法,或提供一下资料。谢谢
78hgdong 2005-09-27
  • 打赏
  • 举报
回复
我用的是FR3.0版本的,当然有这个print这个方法的..
leon2k 2005-09-27
  • 打赏
  • 举报
回复
在windows的打印,是发送到打印机缓冲池的,所以,你没有办法直接监视到打印机有没有打印完成,除非你监视打印池,可以到网上查一个单元:mbPrintStatus.pas,然后将打印机设置为直接打印到打印机,就可以正常监视了。

如果你没有找到这个单元,可以发Email给我。leon2k03@yahoo.com.cn
tybb 2005-09-22
  • 打赏
  • 举报
回复
没人知道 吗?
78hgdong 2005-09-21
  • 打赏
  • 举报
回复
fastreport是有print这个方法的
你也可使用fastreport的属性Events事件里写:
procedure TForm1.frxReport1AfterPrint(Sender: TfrxReportComponent);
begin
fastReport1.print;
..执行了后面的代码。。
IF ..... THEN
BEGIN
....showmessage('打印错误.....');
END
ELSE
showmessage('打印成功.....');
end;
tybb 2005-09-21
  • 打赏
  • 举报
回复
而且我找不到afterprint只找到有beforeprint
tybb 2005-09-21
  • 打赏
  • 举报
回复
你用的是什么版本啊
我的是2.52找不到print 这个方法
而且if 后要要写些什么呢?关鍵是这个判断条件.
ynmc 2005-09-20
  • 打赏
  • 举报
回复
fastreport当然有这个方法啦,楼主可以试试啊.
还有个
frxReport1.PrintOptions.ShowDialog:=False;
这样连对话框都不弹出的,不过要自己设置好.(设置我不会,我是菜鸟)
tybb 2005-09-20
  • 打赏
  • 举报
回复
顶。。。。
tybb 2005-09-20
  • 打赏
  • 举报
回复
看不明白。。
fastreport是没有print这个方法的
78hgdong 2005-09-20
  • 打赏
  • 举报
回复
....
begin
fastReport1.print;
..执行了后面的代码。。
IF ..... THEN
BEGIN
....showmessage('打印错误.....');
END
ELSE
showmessage('打印成功.....');
end;

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧