PrivateSub btnPrint_Click(sender As Object, e As EventArgs) Handles btnPrint.Click'从文本框获取输入DimcompanyName As String = txtCompanyName.TextDimitemName As String = txtItemName.TextDimquantity As Integer = CInt(txtQuantity.Text)Dimprice As Double = CDbl(txtPrice.Text)Dimremark As String = txtRemark.Text'计算总价Dimamount As Double = price * quantity'打开打印对话框DimprintDialog As New PrintDialog()IfprintDialog.ShowDialog() = DialogResult.OK Then'获取打印机设置和页边距DimprinterSettings As PrinterSettings = printDialog.PrinterSettingsDimpageSettings As New PageSettings(printerSettings)'设置打印机字体和页边距Dimfont As New Font("Arial", 12)DimmarginBounds As RectangleF = pageSettings.PrintableAreaDimprintableBounds As RectangleF = marginBoundsprintableBounds.X+= 50printableBounds.Width-= 100printableBounds.Y+= 50printableBounds.Height-= 100'初始化打印对象DimprintDocument As New PrintDocument()printDocument.PrinterSettings = printerSettingsprintDocument.DefaultPageSettings = pageSettingsAddHandlerprintDocument.PrintPage, AddressOf PrintPageEventHandler'开始打印printDocument.Print()'释放资源font.Dispose()printDocument.Dispose()EndIfEndSubPrivateSub PrintPageEventHandler(ByVal sender As Object, ByVal e As PrintPageEventArgs)'获取输入数据DimcompanyName As String = txtCompanyName.TextDimitemName As String = txtItemName.TextDimquantity As Integer = CInt(txtQuantity.Text)Dimprice As Double = CDbl(txtPrice.Text)Dimremark As String = txtRemark.Text'计算总价Dimamount As Double = price * quantity'设置位置和间距DimleftMargin As Integer = 50DimtopMargin As Integer = 100DimlineHeight As Integer = 25'设置打印机字体和颜色Dimfont As New Font("Arial", 12)Dimbrush As New SolidBrush(Color.Black)'绘制出库单内容e.Graphics.DrawString("出库单",font, brush, leftMargin, topMargin)topMargin+= lineHeighte.Graphics.DrawString("-------------------------",font, brush, leftMargin, topMargin)topMargin+= lineHeighte.Graphics.DrawString("单位名称:" & companyName, font, brush, leftMargin, topMargin)topMargin+= lineHeighte.Graphics.DrawString("商品名称:" & itemName, font, brush, leftMargin, topMargin)topMargin+= lineHeighte.Graphics.DrawString("数量:" & quantity, font, brush, leftMargin, topMargin)topMargin+= lineHeighte.Graphics.DrawString("单价:" & price.ToString("0.00"), font, brush, leftMargin, topMargin)topMargin+= lineHeighte.Graphics.DrawString("金额:" & amount.ToString("0.00"), font, brush, leftMargin, topMargin)topMargin+= lineHeighte.Graphics.DrawString("备注:" & remark, font, brush, leftMargin, topMargin)'释放资源font.Dispose()brush.Dispose()EndSub