不知道妳是怎樣做的?
我在程序中是這樣做的:在整個程序中設置了壹個專門調用打印的窗體 Form,名稱為: PrtSer
窗體上放置了 CrystalReport控件,名稱為:Prt 如圖
在每個需要打印的功能中調用這個PrtSer 窗體就可以了
在Form_Load() 中設置Rpt參數
Private Sub Form_Load()
With RPT?
.WindowParentHandle = PrtSer.hWnd
.WindowLeft = 0
.WindowTop = 0
.WindowHeight = Me.ScaleHeight
.WindowWidth = Me.ScaleWidth
End With
End Sub
如:實現“打印預覽”功能
PrtSer.Show
PrtSer.RPT.DataFiles(0) = locaData '動態設置報表中使用的數據庫文件
PrtSer.RPT.ReportFileName = AppPath + "rpt002.RPT"? '報表文件名
'設置報表中的參數,如表頭,日期等等,RptHead 及 RQ 是報表中設置的變量Formulas
PrtSer.RPT.Formulas(0) = "RptHead='" + UnitName + "'"
PrtSer.RPT.Formulas(1) = "RQ='統計日期:" + Format(fDate(0), "YYYY/MM/DD") + " 至 "
+ PrtSer.RPT.Formulas(3) = "OrderType='入庫貨品資料統計表'"
PrtSer.RPT.Destination = 0 '打印預覽
PrtSer.RPT.Action = 1
要實現直接打印功能
........
'前面的調用程序都是壹樣的!
.....
PrtSer.RPT.Destination = 1? '直接打印
PrtSer.RPT.Action = 1
Unload PrtSer
妳說的“壹閃”而過,估計是設置成直接打印了。