VB.Net 操作打印机

前端之家收集整理的这篇文章主要介绍了VB.Net 操作打印机前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

首先创建一个打印机类,继承PrintDocument.重写OnBeginPrint 方法, OnPrintPage方法.

' 使用VB.net操作打印机

ImportsSystem.Drawing.Printing

ImportsSystem.IO

ImportsBarcodeLib

PublicClassTextFilePrintDocument

InheritsPrintDocument

PrivateprintFontAsFont

PrivatestreamToPrintAsStreamReader

PublicSubNew(ByValstreamReaderAsStreamReader)

MyBase.New()

Me.streamToPrint = streamReader

EndSub

ProtectedOverridesSubOnBeginPrint(ByValeAsSystem.Drawing.Printing.PrintEventArgs)

MyBase.OnBeginPrint(e)

printFont= NewFont("Arial",10)

EndSub

ProtectedOverridesSubOnPrintPage(ByValeAsSystem.Drawing.Printing.PrintPageEventArgs)

MyBase.OnPrintPage(e)

DimlppAsSingle =e.MarginBounds.Height / printFont.GetHeight(e.Graphics)

DimyPosAsSingle =0

DimcountAsSingle =0

DimleftMarginAsSingle =e.MarginBounds.Left

DimtopMarginAsSingle =e.MarginBounds.Top

DimlineAsString =streamToPrint.ReadLine()

While (count < lppAndNotlineIsNothing)

yPos= topMargin + (count * printFont.GetHeight(e.Graphics))

e.Graphics.DrawString(line,printFont,Brushes.Black,leftMargin,yPos,NewStringFormat())

count= count + 1

If (count < lpp)Then

line= streamToPrint.ReadLine()

EndIf

EndWhile

If (line <> Nothing) Then

e.HasMorePages= True

Else

e.HasMorePages= False

EndIf

EndSub

EndClass

-----------------

新建一个页面.添加一个按钮.




按钮的点击事件如下

Imports System.IO

Imports System.Drawing.Printing

PrivateSubprintButton_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs) HandlesprintButton.Click

Try

DimstreamToPrintAsStreamReader= NewStreamReader("aa.txt")

Try

' 使用缺省打印机

DimpdAsTextFilePrintDocument= NewTextFilePrintDocument(streamToPrint)

IfNotstoredPageSettingsIsNothingThen

pd.DefaultPageSettings = storedPageSettings

EndIf

DimdlgAsNewPrintDialog()

dlg.Document= pd

DimresultAsDialogResult= dlg.ShowDialog()

If (result = System.Windows.Forms.DialogResult.OK) Then

pd.Print()

EndIf

Finally

streamToPrint.Close()

EndTry

CatchexAsException

MessageBox.Show("error:" + ex.Message)

EndTry

EndSub

文件存放目录



DimstreamToPrintAsStreamReader = NewStreamReader("aa.txt")

这个参数是需要打印文件的目录

猜你在找的VB相关文章