博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

如何取消ActiveReport的打印任务

Posted on 2008-04-09 13:37  我是程序员  阅读(1006)  评论(3编辑  收藏  举报
     我们在使用ActiveReport打印报表的时候需要支持在打印中途取消打印。虽然ActiveReport的Document的Printer属性暴露了QueryPageSettings、PrintPage等事件的事件参数都提供了Cancel属性,但是在实际测试的时候发现设置上述事件的事件参数的Cancel属性确实能够取消打印任务,但是发现整个打印任务全部取消了,包括已经输出到打印缓存的页面。我们的需求是已经输出到打印缓存的页面继续输出到打印机,还没有打印的页面则取消。经过大量的分析和尝试后发现通过设置Printer对象(Document对象所暴露的属性)的ToPage属性的值为0可以解决这个问题。