想问的问题是:
用VB调用水晶报表,直接调用的CRAXDRT.Report, 报表打印本身没有问题,但有个问题比较讨厌:打印水晶报表时,会跳出一个打印提示窗,提示当前正在打印第几页,总共有多少页,而刚好那个打印提示窗上有个“取消打印”的按钮是被默认赋予焦点的,在现场工作时,使用扫描枪(带回车键)录入数据,如果扫描速度较快,如果刚好打印窗跳出来的时候扫描枪正在工作,打印窗体上的“取消打印”按钮就会捕获到“回车”键,然后打印就被取消了,然后就被抱怨了,说有时候扫描了却不能被打印。这个问题怎么解决?水晶报表对象的PrintOut方法的几个参数好像没有禁止那个窗体跳出来的参数,只有个禁上去跳出选择打印机界面的参数(PromptUser,我已经设置为FALSE了)。请求路过的高手支招。

解决方案 »

  1.   

    调用打印函数时,是这样:
    CrReport.PrintOut False, , , 1, LST_ModList.ListCountPromptUser是False
    NumberOfCopy是空值(默认)
    Collated是空值(默认值)
    StartPage为1
    StopPage为水晶报表的总页数对Collated不是很懂,能否解释一下?
      

  2.   

    用CrystalReport1.Action = 1打印从没有出现过楼主描述的问题
      

  3.   


    不是太好使,那个带“取消打印”的窗口还是跳出来了。而且ACTION=1时让我录入了两次参数。
      

  4.   

    楼主为什么不使用国产报表?比如FineReport之类的,不会出现这么多多余的提示窗,打印也没有问题,技术支持也是免费服务。