如果改变(Delphi3)QuickReport报表的默认打印机?

lighttop 2000-01-06 11:00:00
各位高人:
我用QuickReport作报表,发现在预览窗口中设置打印机为非WINDOWS的默认打印机时,报表仍然通过默认的打印机输出。不知如何让QuickReport报表通过用户自己选定的打印机输出?

谢谢各位。

...全文
699 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
渤海海峡 2000-01-07
  • 打赏
  • 举报
回复
实际上您可以直接用 printer.printers[printer.printerindex]
来设定打印机。别使用qr的(不好使:))
如果用combobox来选,可以这样。

combobox1.items.clear;
combobox1.items.assign(printer.printers);

选取后:
printer.printerindex:=combobox1.itemindex;
(初始化打印机)

当然,您也可以直接指定打印机!
lighttop 2000-01-07
  • 打赏
  • 举报
回复
谢谢Snow热心关注我的问题。
我用Delphi 3编了个数据库程序。利用它的QuickReport输出报表(想用激光打印机输出,以节省时间),同时由于这个程序还要用平推式打印机输出卡片,所以我装了两台打印机:HP 6L和富士通的8400平推式打印机,通过打印共享器切换。 我设置为富士通8400为WINDOWS系统的默认打印机,平时主要打印卡片,但当打印每日的报表时,由于想通过HP-6L输出,便在报表的预览窗口(QuickReport自带的预览窗口)中设置当前打印机为HP-6L,并把打印共享器切换到HP-6L,然后按打印图标打印,但是报表仍通过富士通8400打印机的驱动程序输出,在HP-6L上得到乱码。
我不知这是不是QuickReport的BUG,因为我已经在它的预览窗口上选择了打印机,它仍然使用WINDOWS的默认打印机输出。
我不知DELPHI4中是否已无这个问题,但是我还不想升级到D4。
请教解决方法。
lighttop 2000-01-07
  • 打赏
  • 举报
回复
首先感谢各位对我的问题的关注。
我在本地的 VCL控件大集合 中下载了一个qr20k.exe 升级程序试用了一下发现我的问题已经解决了。 报表能够通过用户选择的打印机正常输出了. 看来原来我的DELPHI3版本有问题,可是又无法升级到3.02版。

我很想用D4或D5 ,可是我的机器速度有点慢, 而且D4好象与IE5 有点矛盾 .并不是很稳定.
lighttop 2000-01-07
  • 打赏
  • 举报
回复
谢谢yjq热心关注我的问题。
我可能没有把问题说清楚。 我的程序中打印卡片是直接使用DELPHI 的Printer对象,使用DELPHI 自带的打印设置对话框来选择打印机, 这时打印正常,也能选择不同的打印机。但输出报表时只能使用QR 的打印机。 无论是使用打印机设置对话框选择打印机还是在报表的预览窗口中选择不同的打印机, QR都使用WINDOWS系统的默认打印机来输出。
snow 2000-01-07
  • 打赏
  • 举报
回复
我试了一下,未发现问题,你具体一点好吗?

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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