新聞中心
VB打印的代碼如下圖
用VB可以直接使用對象 Printer 進行數(shù)據(jù)及圖片的打印。
成都創(chuàng)新互聯(lián)公司長期為千余家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為天門企業(yè)提供專業(yè)的成都做網(wǎng)站、網(wǎng)站建設,天門網(wǎng)站改版等技術服務。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
如:
'***初始化打印機
Printer.ScaleMode = 1
Printer.FontName = "仿宋_GB2312"
Printer.FontSize = 8
Printer.FontBold = False
'設置打印區(qū)域,四個 參數(shù)分別是打印區(qū)域的左上角及右下角坐標
' 這里以 A4 打印紙張大小為例,邊框距各為2cm.
PrtLeftx=567*2
PrtLefty=567*2.0
PrtRightx=567*(21-2)
PrtLefty=567*(29.5-2)
'**打印線條
Printer.DrawWidth = 2
Printer.Line (PrtLeftx, PrtLefty)-(PrtRightx, PrtLefty)
Printer.DrawWidth = 1
' 打印字符串
Printer.Print "中國 China"
要打印窗體中TextBox 中的內(nèi)容,將其賦給變量或直接打印都可以。
VS2005如何用VB.NET代碼實現(xiàn)打印功能
有個PrintDocument控件,可以實現(xiàn)打印。。。
MSDN原話:
使用 PrintDocument 組件
涉及 PrintDocument 組件的兩種主要情況是:
簡單的打印作業(yè),如打印單個文本文件。在這種情況下,應將 PrintDocument 組件添加到 Windows 窗體,然后在 PrintPage 事件處理程序中添加打印文件的編程邏輯。 該編程邏輯應以使用 Print 方法打印文檔結束。
此方法向打印機發(fā)送一個 Graphics 對象,該對象包含在 PrintPageEventArgs 類的 Graphics 屬性中。
有關如何使用 PrintDocument 組件打印文本文檔的示例,請參見
如何:打印 Windows 窗體中的多頁文本文件。
更為復雜的打印作業(yè),如想要重新使用已編寫的打印邏輯的情況。
在這種情況下,應從 PrintDocument 組件派生一個新組件,并重寫
(請參見 Visual Basic 的 重寫或 C# 的 重寫) PrintPage 事件。
將 PrintDocument 組件添加到窗體后,它出現(xiàn)在 Windows 窗體設計器底部的欄中
VB中用什么代碼打印文件啊,語句怎么寫啊,
VB中的幾種打印方法
1. 采用Visual Basic 提供的簡單打印函數(shù)PrintForm 方法。應用程序窗體的PrintForm 方法時,Visual Basic 把窗體的位圖送到當前打印機。該方法的優(yōu)點在于它幾乎不需要任何編程,但也有很大缺陷。最為突出的是當?shù)头直媛蕡D形在高分辨率打印機上打印時,其結果令人無法滿意,會產(chǎn)生鋸齒。下面代碼將在打印機上打印窗體。
Private Sub Command1_Click() ' 用PrintForm 打印
Me.PrintForm ' 打印窗體的可見區(qū)域
End Sub
2. 用Printer 對象進行高分辨率輸出。但要想產(chǎn)生復雜的打印輸出,編程較為煩瑣。Printer 對象代表系統(tǒng)缺省的打印機,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 告訴打印機,程序對當前輸出頁的發(fā)送已經(jīng)結束,Printer 對象應開始新的一頁。
EndDoc 告訴VB,程序創(chuàng)建文檔結束,VB 應將它發(fā)送到物理打印機上打印。
KillDoc 取消當前打印作業(yè)。應用程序應該終止由EndDoc 和KillDoc 所設定的每個打印作業(yè)。
Zoom 屬性用于定義打印輸出的縮放因子。
Copies 屬性用于定義打印的副本數(shù)目。
3. 采用直接將數(shù)據(jù)傳送打印機的方法進行打印輸出。有兩種方法將數(shù)據(jù)送往打印機。第一種是用Print #方法,就像將數(shù)據(jù)寫入一個文件一樣。另一種方法寫端口,但不是送文本,而是送特定的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 控件的可見區(qū)域
End Sub
上面代碼先進行打進設置,再進行打印。如果不需要設置,采用下面代碼更為簡單:
RTF1.SelPrint Printer.hDC
' 打印RTF1 控件的可見區(qū)域
5. 可以在VB 中調(diào)用Word 97 提供的OLE 自動化服務,利用Word 97 強大的打印功能來完成VB 打印,筆者認為這是最令人滿意的方法。下面代碼說明VB 如何與Word 集成。
Private Sub Command4_Click() ' 調(diào)用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 傳送數(shù)據(jù)!"
objWord.Selection.Paste
objWord.PrintPreview = True ' 預覽方式
'objWord.PrintOut' 執(zhí)行打印
'objWord.Quit' 退出Word
Exit Sub
objError:
If Err 429 Then
MsgBox Str $(Err) &Error $
Set objWord = Nothing
' 不能創(chuàng)建Word 對象則退出
Exit Sub
Else
Resume Next
End If
End Sub
6. 用VC 編制DLL 模塊完成打印。在VB 中調(diào)用該模塊,用混合編程方法進行打印輸出。因涉及VC 編程比較煩瑣,這里不再討論。
VB.NET中怎么獲取當前打印機的紙張類型
我是VB.NET 2010版本
窗體上添加一個按鈕,代碼如下:
Imports System.Drawing.Printing
Public Class Form1
'采用關鍵字WithEvents聲明一個PrintDocument對象,會引發(fā)它的PrintPage事件
Private WithEvents My_PrintDocument As PrintDocument
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'實例化PrintDocument對象
My_PrintDocument = New PrintDocument
'顯示默認的打印機名稱
MsgBox(My_PrintDocument.PrinterSettings.PrinterName)
'顯示默認的打印機紙張類型名稱
MsgBox(My_PrintDocument.DefaultPageSettings.PaperSize.ToString)
End Sub
End Class
當前標題:vb.net打印機代碼 vb窗體打印代碼
標題網(wǎng)址:http://www.dlmjj.cn/article/doisohs.html