導航:首頁 > 編程語言 > vb批量列印程序

vb批量列印程序

發布時間:2023-03-03 16:14:10

『壹』 VB中用什麼代碼列印文件啊,語句怎麼寫啊,

VB中的幾種列印方法

1. 採用Visual Basic 提供的簡單列印函數PrintForm 方法。應用程序窗體的PrintForm 方法時,Visual Basic 把窗體的點陣圖送到當前列印機。該方法的優點在於它幾乎不需要任何編程,但也有很大缺陷。最為突出的是當低解析度圖形在高解析度列印機上列印時,其結果令人無法滿意,會產生鋸齒。下面代碼將在列印機上列印窗體。

Private Sub Command1_Click() ' 用PrintForm 列印
Me.PrintForm ' 列印窗體的可見區域
End Sub
2. 用Printer 對象進行高解析度輸出。但要想產生復雜的列印輸出,編程較為煩瑣。Printer 對象代表系統預設的列印機,Printer 對象支持許多由窗體和圖形框所支持的屬性和方法,三種對象都有畫線和畫方框。應用程序可用以下代碼在Printer 對象上畫出一平方英寸的方框。它離左上角二英寸。注意:列印機以twips 來測量距離。每英寸有1440 個twips。

Printer.Line(2 *1440,2 *1440) -Step(1440,1440), ,B
列印機、從窗體和圖形框都有Circle、PaintPicture、Print、Pset、TextHeight、TextWidth 方法。使用這些方法,應用程序可以為列印機生成高解析度輸出。

列印文本直接用Print 方法,見下列代碼:

Printer.Print "Hello,China ComputerWorld!" ' 列印字元串

Printer 對象還有一些窗體和圖形框都沒有方法:

NewPage 告訴列印機,程序對當前輸出頁的發送已經結束,Printer 對象應開始新的一頁。

EndDoc 告訴VB,程序創建文檔結束,VB 應將它發送到物理列印機上列印。

KillDoc 取消當前列印作業。應用程序應該終止由EndDoc 和KillDoc 所設定的每個列印作業。

Zoom 屬性用於定義列印輸出的縮放因子。

Copies 屬性用於定義列印的副本數目。

3. 採用直接將數據傳送列印機的方法進行列印輸出。有兩種方法將數據送往列印機。第一種是用Print #方法,就像將數據寫入一個文件一樣。另一種方法寫埠,但不是送文本,而是送特定的PCL 語言,PCL 表示列印控制語言,它是一種特殊語言,用轉義代碼來控制列印機的具體動作。因為此方法太煩瑣,本文不做太多介紹。

4. 如果你在編程時用到了RichTextBox 控制,那麼你可以使用該控制項的SelPrint 方法來列印,使用非常簡單。下面一段代碼即用RichTextBox 控制項的SelPrint 方法來完成列印。

Private Sub Command3_Click() 'SelPrint 方法
CommonDialog1.Flags=cdlPDReturnDC +cdlPDNoPageNums
If RTF1.SelLength = 0 Then
'RTF1 為窗體的RichTextBox 控制
CommonDialog1.Flags = CommonDialog1.Flags
+cdlPDAllPages
Else
CommonDialog1.Flags = CommonDialog1.Flags +
cdlPDSelection
End If
CommonDialog1.CancelError = True
On Error Resume Next
CommonDialog1.ShowPrinter
If Err.Number = cdlCancel Then Exit Sub
If Err.Number <> 0 Then
Beep
MsgBox "Error printing file."
&vbCrLf +Err.Description, vbOKOnly +vbExclamation,
「Printing Error!"
Exit Sub
End If
Printer.Print ""
RTF1.SelPrint CommonDialog1.hDC
' 列印RTF1 控制項的可見區域
End Sub
上面代碼先進行打進設置,再進行列印。如果不需要設置,採用下面代碼更為簡單:

RTF1.SelPrint Printer.hDC
' 列印RTF1 控制項的可見區域
5. 可以在VB 中調用Word 97 提供的OLE 自動化服務,利用Word 97 強大的列印功能來完成VB 列印,筆者認為這是最令人滿意的方法。下面代碼說明VB 如何與Word 集成。

Private Sub Command4_Click() ' 調用Word 列印
Dim objWord As Object
Const CLASSOBJECT = "Word.Application"
On Error GoTo objError
Set objWord = CreateObject(CLASSOBJECT)
objWord.Visible = True
objWord.Documents.Add
With objWord
.ActiveDocument.Paragraphs.Last.Range.Bold = False
.ActiveDocument.Paragraphs.Last.Range.Font.Size =20
.ActiveDocument.Paragraphs.Last.Range.Font.Name =
"黑體"
.ActiveDocument.Paragraphs.Last.Range.Font.ColorIndex==4
.ActiveDocument.Paragraphs.Last.Range.Text =
"我是計算機世界讀者!"
End With
Clipboard.Clear
Clipboard.SetText
"通過剪切板向WORD 傳送數據!"
objWord.Selection.Paste
objWord.PrintPreview = True ' 預覽方式
'objWord.PrintOut' 執行列印
'objWord.Quit' 退出Word
Exit Sub
objError:
If Err <> 429 Then
MsgBox Str $(Err) &Error $
Set objWord = Nothing
' 不能創建Word 對象則退出
Exit Sub
Else
Resume Next
End If
End Sub
6. 用VC 編制DLL 模塊完成列印。在VB 中調用該模塊,用混合編程方法進行列印輸出。因涉及VC 編程比較煩瑣,這里不再討論。

閱讀全文

與vb批量列印程序相關的資料

熱點內容
網路鬥地主記牌器怎麼實現的 瀏覽:377
ps鏡像文件製作教程 瀏覽:45
系統分頁文件大小設置多少 瀏覽:447
win10有線無法上網 瀏覽:339
wps無法訪問指定文件 瀏覽:96
iphone4震動壞了 瀏覽:217
安卓隨機數軟體rand 瀏覽:356
CNC編程如何掌握公差 瀏覽:297
linux搭建php環境 瀏覽:514
星形網路怎麼表示有故障 瀏覽:719
dbf文件c語言處理excel 瀏覽:138
金蝶kis支持win10嗎 瀏覽:113
常州採集物聯網大數據平台有哪些 瀏覽:950
win10休眠文件改到d盤 瀏覽:626
如何編程手機app軟體 瀏覽:656
node獲取文件名 瀏覽:367
iphoneios7怎麼設置鈴聲 瀏覽:52
手機qq激活星鑽 瀏覽:302
html中引入js文件路徑 瀏覽:83
0基礎自學編程可以看什麼書 瀏覽:860

友情鏈接