具体来说,指定打印的实现有许多种方式,主要看你能不能想到或者知不知道打印所对应的API并且会不会使用,在这里描述两种方式。
首先第一种是比较笨重的方式:
这种方式需要两个一样的数据窗口dw_1和dw_2,然后是在指定打印时,将指定打印范围的数据从dw_1同步到dw_2里面,最后直接打印dw_2,此处代码不实现,可自行去研究实现。
第二中方式是使用dw的API实现:
该方式相对来说比较简单,但是如果数据窗口是经过继承封装的,可能就不一定适用,不适用的情况下可以选择方式1来实现。
该方法只需要一个打印的数据窗口即可,打印前先设置需要打印的页数范围,即从哪一页开始,从哪一页结束,当然,当两个值相等时,自然就是打印指定的一页了,需要实现的代码如下:
在打印的数据窗口的printpage方法下设置打印范围:
//打印范围页 其中em_1.text为输入的起始页,em_2.text结束页
if pagenumber >= long(em_1.text) and pagenumber<=long(em_2.text) then
return 0
else
return 1
end if
然后在打印的button下写
dw.print()即可