有個(gè)PrintDocument控件,可以實(shí)現(xiàn)打印。。。

創(chuàng)新互聯(lián)建站是一家專注于網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站與策劃設(shè)計(jì),龍?zhí)毒W(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:龍?zhí)兜鹊貐^(qū)。龍?zhí)蹲鼍W(wǎng)站價(jià)格咨詢:13518219792
MSDN原話:
使用 PrintDocument 組件
涉及 PrintDocument 組件的兩種主要情況是:
簡單的打印作業(yè),如打印單個(gè)文本文件。在這種情況下,應(yīng)將 PrintDocument 組件添加到 Windows 窗體,然后在 PrintPage 事件處理程序中添加打印文件的編程邏輯。 該編程邏輯應(yīng)以使用 Print 方法打印文檔結(jié)束。
此方法向打印機(jī)發(fā)送一個(gè) Graphics 對象,該對象包含在 PrintPageEventArgs 類的 Graphics 屬性中。
有關(guān)如何使用 PrintDocument 組件打印文本文檔的示例,請參見
如何:打印 Windows 窗體中的多頁文本文件。
更為復(fù)雜的打印作業(yè),如想要重新使用已編寫的打印邏輯的情況。
在這種情況下,應(yīng)從 PrintDocument 組件派生一個(gè)新組件,并重寫
(請參見 Visual Basic 的 重寫或 C# 的 重寫) PrintPage 事件。
將 PrintDocument 組件添加到窗體后,它出現(xiàn)在 Windows 窗體設(shè)計(jì)器底部的欄中
用PrintForm控件,在Visual Basic PowerPacks項(xiàng)目列表中vb2008 SP1以后版本就有了,下面是代碼
Imports System.Drawing.Printing
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'先設(shè)置打印頁面的頁邊距
With Me.PrintForm1
Dim myMargins As New Margins '頁邊距設(shè)置信息是存放在這個(gè)Margins類型的對象中的
With myMargins '分別設(shè)置上下左右邊距,
.Left = 12
.Right = 12
.Top = 12
.Bottom = 12
End With
.PrinterSettings.DefaultPageSettings.Margins = myMargins '把myMargins對象賦給PrintForm1的設(shè)置屬性
End With
Me.Button1.Visible = False '這個(gè)是在打印的時(shí)候隱藏打印按鈕
Me.PrintForm1.Form = Me '設(shè)置要打印的窗體
Me.PrintForm1.Print() '調(diào)用打印窗體方法
Me.Button1.Visible = True '再把隱藏的打印按鈕顯示出來
End Sub
我?guī)湍惆炎詈笠徊糠值恼Z句順序調(diào)換一下。你試一試
sub button1_click() '---執(zhí)行打印
Dim pd As PrintDocument = New PrintDocument
pd.PrinterSettings = PrintDialog1.PrinterSettings
If _PrintDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
for i=0 to 1 '這樣可以兩次截圖
CaptureScreen() '--執(zhí)行前面自定義函數(shù)截圖
AddHandler pd.PrintPage, AddressOf Document_PrintPage
pd.Print()
Threading.Thread.sleep(100) ‘ 再加上一個(gè)間隔
next
end sub
先拖過來控件PrintDocument1,然后雙擊PrintDocument1,在它的PrintPage事件中加入代碼如下:
Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
dim a as String
a="abcd"
Dim mypen As Pen = New Pen(Color.Blue, 2)
e.Graphics.DrawString(a, New Font("宋體", 20), New Pen(Color.Black, 1).Brush, 30, 30)
End Sub
調(diào)用下面語句可直接用默認(rèn)打印機(jī)打印出來:
PrintDocument1.Print()
可以把數(shù)據(jù)導(dǎo)出到EXCEL,然后使用EXCEL進(jìn)一步處理后使用。
也可以做成vb報(bào)表(VB自帶有)。
先設(shè)置報(bào)表格式,打印時(shí)向報(bào)表傳遞數(shù)據(jù)就可以了。
vb的函數(shù)已經(jīng)不適合vb.net了,想學(xué)vb,得裝個(gè)vb6。用vb.net的話,使用Debug.WriteLine("hello world"),可以在輸出窗口查看到這個(gè)信息,這是最簡單的,想直接寫窗體就得多寫幾行代碼了,具體搜索一下
網(wǎng)頁標(biāo)題:vb.net打印輸出,vb編寫打印功能
URL鏈接:http://chinadenli.net/article25/dsisjji.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、網(wǎng)站收錄、響應(yīng)式網(wǎng)站、企業(yè)建站、網(wǎng)站建設(shè)、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)