【问题标题】:Selecting printer and settings margins of page with printform component使用 printform 组件选择打印机和设置页边距
【发布时间】:2015-07-01 19:44:49
【问题描述】:

如何添加打印机选择对话框,以及如何控制页面的边距? 我在代码中尝试了很多东西(打印文档代码有效,但它们不显示我的表单)但它们不起作用。我正在使用此代码打印表单:

With Me.PrintForm1
    .PrintAction = Printing.PrintAction.PrintToPreview
    .Print(Me, PowerPacks.Printing.PrintForm.PrintOption.ClientAreaOnly)
End With

Me.Close()

它可以工作,但它不要求选择打印机,我无法控制边距。

谢谢

【问题讨论】:

  • PrintForm1.PrinterSettings.DefaultPageSettings.Margins.Left = ...
  • 非常感谢。我找到了这段代码:“使用 MyMargins .Left = 40 .Right = 40 .Top = 40 .Bottom = 40 End With .PrinterSettings.DefaultPageSettings.Margins = MyMargins 将 MyMargins 作为新边距”。它也可以工作。

标签: vb.net printform


【解决方案1】:

我终于找到了解决办法,这里是:

PrintDialog1.PrinterSettings = PrintForm1.PrinterSettings
    PrintDialog1.AllowSomePages = True
    If PrintDialog1.ShowDialog = DialogResult.OK Then
        PrintForm1.PrinterSettings = PrintDialog1.PrinterSettings

        With Me.PrintForm1
            .PrintAction = Printing.PrintAction.PrintToPreview



            Dim MyMargins As New Margins

            With MyMargins
                .Left = 40
                .Right = 40
                .Top = 40
                .Bottom = 40
            End With

            .PrinterSettings.DefaultPageSettings.Margins = MyMargins

            PrintForm1.DocumentName = notasyon_lbl.Text
            .Print(Me, PowerPacks.Printing.PrintForm.PrintOption.CompatibleModeClientAreaOnly)

        End With

    End If

还是谢谢。

【讨论】:

  • 这也有效:PrintForm1.PrinterSettings.DefaultPageSettings.Margins = New System.DrawingPrinting.Margins(5, 5, 5, 5)
猜你喜欢
  • 2011-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-20
  • 2019-11-15
  • 1970-01-01
相关资源
最近更新 更多