【问题标题】:how can I tell if someone printed from printPreview?如何判断是否有人从 printPreview 打印?
【发布时间】:2009-05-29 14:07:04
【问题描述】:
Using printPreview As New PrintPreviewDialog()
        ' Dim x As New Printing.PrintDocument()
        ' AddHandler x.PrintPage, AddressOf PrintData
        printPreview.Document = Me.CurrentDocument
        If ShowPrinterSetup Then
            Dim x As New PrintDialog()
            x.Document = CurrentDocument
            x.ShowDialog(Anchor)
        End If
        whichPage = 0
        Return printPreview.ShowDialog(Anchor)
End Using

到目前为止,无论我在 printpreview 中单击什么,showdialog 都会返回取消? 如何判断用户是否打印?如果项目确实打印到打印机,我想清除它们的打印队列,或者询问他们是否应该清除它,但前提是他们确实打印了一些东西。

【问题讨论】:

    标签: vb.net printing


    【解决方案1】:

    您可以从 CurrentDocument EndPrint 事件中获取打印作业的结果

    Private WithEvents CurrentDocument As New PrintDocument
    
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Using printPreview As New PrintPreviewDialog()
            printPreview.Document = Me.CurrentDocument
            printPreview.ShowDialog()
        End Using
    End Sub
    
    Private Sub document_EndPrint(ByVal sender As Object, ByVal e As PrintEventArgs) Handles CurrentDocument.EndPrint
        If e.PrintAction = PrintAction.PrintToPrinter Then
            MsgBox("Document Printed to Printer")
        End If
    End Sub
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-05
      • 1970-01-01
      • 2019-01-27
      • 1970-01-01
      • 1970-01-01
      • 2021-10-11
      相关资源
      最近更新 更多