Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
PrintDialog を使って
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=11410#CommentId31237
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
hori
 (社会人)
投稿日時
2013/11/9 11:19:02
るきおさま。400さま。ご教授ありがとうございます。
「PrintPageイベントは1ページに付き1回発生します。」についての理解不足が原因でした。
当学の、初級35回印刷をもっとしっかり読んでおけばよかったです。
結果的には下記のようにやったら成功しました。
PrintDialog も一応、機能しているようです。
400さまにご教授いただいた方法は、PrintDialog でその都度両面設定することなく
プログラムから自動で設定する方法みたいですので研究してみます。
その方法が分からないから PrintDialog を使ったわけですのでありがとうございます。
以下、うまくいったコードです。ありがとうございました。
=======================================================
Dim CurrentPage As Integer = 0
Private WithEvents docToPrint As New Printing.PrintDocument
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
PrintDialog1.AllowSomePages = True
PrintDialog1.ShowHelp = True
PrintDialog1.Document = docToPrint
Dim result As DialogResult = PrintDialog1.ShowDialog()
If (result = DialogResult.OK) Then
docToPrint.Print()
End If
End Sub
Private Sub document_PrintPage(ByVal sender As Object, _
ByVal e As System.Drawing.Printing.PrintPageEventArgs) _
Handles docToPrint.PrintPage
CurrentPage += 1
If CurrentPage = 1 Then
'==============pg1===============
Dim img As Image = Image.FromFile("c:test1.bmp")
e.Graphics.DrawImage(img, New Rectangle(0, 0, img.Width, img.Height))
e.HasMorePages = True
img.Dispose()
Else
'==============pg2===============
Dim img2 As Image = Image.FromFile("c:test2.bmp")
e.Graphics.DrawImage(img2, New Rectangle(0, 0, img2.Width, img2.Height))
e.HasMorePages = False
img2.Dispose()
End If
End Sub