tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: Re5: VB.NETの印刷の改ページ処理
投稿日: 2006/03/14(Tue) 21:44
投稿者YAS
マサノリさん,こんばんは。

印刷プレビューですが,簡単なサンプルです。
(プレビューできれば印刷は簡単です。)
参考にしてください。

Public Class Form1

    Dim WithEvents PrintDocument As New Drawing.Printing.PrintDocument
    Dim WithEvents PrintPreviewDialog As New PrintPreviewDialog
    Dim List As New Specialized.StringCollection

    Private Sub Form1_Load(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles MyBase.Load
        For i As Integer = 0 To 100
            List.Add(String.Format("{0}行目のデータ", i))
        Next
        Me.PrintPreviewDialog.Document = PrintDocument
        Me.PrintPreviewDialog.ShowDialog(Me)
    End Sub

    Private Page As Integer = 0
    Private Sub PrintDocument_PrintPage(ByVal sender As Object, _
    ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument.PrintPage
        e.Graphics.DrawString("タイトル", Me.Font, _
        Brushes.Black, e.MarginBounds.Left, e.MarginBounds.Top)
        For i As Integer = 0 To 19
            e.Graphics.DrawString(List(Page * 20 + i), Me.Font, Brushes.Black, _
            e.MarginBounds.Left, e.MarginBounds.Top + e.MarginBounds.Height / 21 * (i + 1))
        Next
        Page += 1
        e.HasMorePages = (Page < 5)
    End Sub
End Class

フォームのコードに貼り付ければ動作します。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。