掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB.NETでフォームの印刷をするには? (ID:109445)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>皆様はどのようにしていますか? 無くなってしまったのでしょうがなく 色々拾い集めて来て、こんなものを作ってやっていますが。 一応これでフォームはプリントアウトできます。 このコードはあるのはprintFormボタンが一つと、PrintDocument1コントロールが一つだけ Private Declare Auto Function BitBlt Lib "gdi32.dll" (ByVal hdcDest As IntPtr, ByVal _ nXDest As Integer, ByVal nYDest As Integer, ByVal nWidth As Integer, ByVal nHeight _ As Integer, ByVal hdcSrc As _ IntPtr, ByVal nXSrc As Integer, _ ByVal nYSrc As Integer, ByVal _ dwRop As System.Int32) As Boolean Const SRCCOPY As Integer = &HCC0020 Private bitImg As Bitmap '最終的にプリントアウトするビットイメージ Private Sub printForm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles printForm.Click Dim gp As Graphics = Me.CreateGraphics 'フォームのGraphicオブジェクトの作成 bitImg = New Bitmap(Me.Size.Width, Me.Size.Height, gp) 'ビットマップ領域確保 Dim fomG As Graphics = gp.FromImage(bitImg) Dim Hdc1 As IntPtr = gp.GetHdc() Dim Hdc2 As IntPtr = fomG.GetHdc() BitBlt(Hdc2, 0, 0, Me.ClientRectangle.Width, Me.ClientRectangle.Height, Hdc1, 0, 0, SRCCOPY) gp.ReleaseHdc(Hdc1) fomG.ReleaseHdc(Hdc2) PrintDocument1.Print() End Sub Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As _ System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage Dim fGraphics As Graphics = e.Graphics fGraphics.DrawImage(bitImg, 0, 0) bitImg.Dispose() fGraphics.Dispose() End Sub
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.