Hal yang paling penting dalam sebuah laporan adalah hasil cetak (Printing), maka pada kesempatan kali ini AlifaVb ingin membahasa cara sederhana mencetak isi dari DataGridView pada Vb.Net. Persiapkan dahulu Form yang berisi DataGridView dengan beberapa data didalamnya.
Buatlah sebuah form dan tambahkan satu buah DataGridView, dua buah Button dan PrintDocument disign tampilannya kira-kira seperti ini.
Buka CodingView dari Form2 tersebut tulislah kode dibawah ini.
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click PrintDocument1.Print() End Sub Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage Dim bm As New Bitmap(Me.DataGridView1.Width, Me.DataGridView1.Height) DataGridView1.DrawToBitmap(bm, New Rectangle(0, 0, Me.DataGridView1.Width, Me.DataGridView1.Height)) e.Graphics.DrawImage(bm, 0, 0) End Sub
Bila tidak ada yang error maka default printer snds aksn mencetak data yang ada pada DataGridView.
Kode lengkap dari Form2 seperti ini.
Imports System.Data.OleDb Public Class Form2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim connectionString As String = "provider=microsoft.ACE.oledb.12.0;data source=db_keuangan.accdb" Dim sql As String = "SELECT * FROM Kas" Dim connection As New OleDbConnection(connectionString) Dim dataadapter As New OleDbDataAdapter(sql, connection) Dim ds As New DataSet() connection.Open() dataadapter.Fill(ds, "Kas") connection.Close() DataGridView1.DataSource = ds DataGridView1.DataMember = "Kas" End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click PrintDocument1.Print() End Sub Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage Dim bm As New Bitmap(Me.DataGridView1.Width, Me.DataGridView1.Height) DataGridView1.DrawToBitmap(bm, New Rectangle(0, 0, Me.DataGridView1.Width, Me.DataGridView1.Height)) e.Graphics.DrawImage(bm, 0, 0) End Sub End Class
Silakan download projectnya disini.
0 Komentar