teks, menu pilihan (dari RadioButton, CheckBox, ComboBox, dsb), gambar, dan sebagainya. Nah inputan yang berupa teks terbilang sangat mudah apabila akan disimpan, misal ke database, namun bila inputan berasal dari RadioButton, CheckBoc, ComboBox maupun PictureBox memiliki perlakuan yang sedikit berbeda. Kali ini akan dibahas gimana sih caranya menyimpan gambar ke database??
Kita buat satu project windows application, desain formnya kita isi dengan 2 Label, 1TextBox, 1 PictureBox, dan 3 Button (masing-masing Button untuk memilih gambar, menghapus gambar, dan menyimpan ke database).
Nah, cara pilih gambarnya gimana?? Kita akan gunakan OpenFileDialog, ketikkan baris kode berikut pada event BtnBrowse_Click.
Untuk menghapus gambar dari PictureBox kita ketikkan baris kode berikut.
Sekarang gambar sudah bisa tampil di form, namun belum bisa disimpan ke database. Kita buat databasenya dulu, disini saya gunakan Microsoft SqlServer, desain seperti berikut.
Sebelum kita simpan gambarnya, kita konversi dulu ke array byte. Kita buat 2 method, untuk konversi ke byte dan untuk menyimpan ke database seperti berikut dan jangan lupa menambah baris kode paling atas (karena kita akan mengakses database SqlServer).
Nah, sekarang kita bisa simpan gambar ke database, ketik baris kode berikut pada event BtnSimpan_Click.
Jalankan aplikasi dengan menekan tombol F5, tekan tombol Simpan, cek database yang tadi dibuat, datanya telah terisi. Adakah yang aneh?? Yap, kolom Gambar berisi "<Binary>", itu adalah gambar yang telah kita konversi ke byte. Muncul satu pertanyaan, kalo mau nampilin gambar dari database gimana?? Kita lihat di tutorial selanjutnya
Contoh Tutorial PictureBox VBNET Berikut adalah langkah untuk membuat program berikut seperti di atas: 1. Buat Project baru, dan tambahkan komponen berikut ini - OpenFileDialog1 - PictureBox1 - CheckBox1 - Button1 - Label1 untuk PictureBox1, ubahlah atribut BorderStyle menjadi Fixed3D, begitu juga dengan Label1, ubah atribut BorderStyle menjadi Fixed3D dan ubah juga atribut AutoSize menjadi false. Sesuaikan dengan tampilan desain berikut ini:
Tampilan Desain 2. Selanjutnya, anda masuk ke dalam jendela kode program. Anda harus mengimpor System.Drawing.Bitmap supaya bisa menggunakan function FromFile. Tambahkan pada bagian paling atas program anda:
Imports System.Drawing.Bitmap
6. OK, simpan proyek anda dan tekan tombol F5 untuk mencoba program anda. Untuk jelasnya perhatikan kode program selengkapnya berikut ini:
Imports System.Drawing.Bitmap Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If OpenFileDialog1.ShowDialog Then PictureBox1.Image = FromFile(OpenFileDialog1.FileName) Call CheckBox1_CheckedChanged(sender, e) Label1.Text = "Nama file: " & OpenFileDialog1.FileName End If End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ' pengaturan OpenFileDialog1 OpenFileDialog1.Title = "Masukkan foto anda" OpenFileDialog1.Filter = "JPEG File|*.jpg;*.jpeg" ' pengaturan PictureBox supaya tampilannya strecthimage PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage End Sub Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged If CheckBox1.CheckState = CheckState.Checked Then PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage Else PictureBox1.SizeMode = PictureBoxSizeMode.Normal End If End Sub End Class
Bagaimana MengInsert gambar kedalam Table dan menampilkan kembali ke PictureBox Ini adalah artikel pertama di awal tahun 2009 M/1430 H. sebenarnya udah lama sich mau posting artikel ini, tapi ada kendala sedikit, tapi Alhamdulillah hari ini artikel ini bisa release. Artikel ini membahas bagaimana membuat program untuk memasukkan gambar ke database dan bagaimana menampilkan file gambar tersebut kedalam picture box.. Pada artikel ini saya menggunakan Vb 2008 express dengan database SQL 2008 express. Tapi ini bisa di gunakan untuk versi-versi sebelumnya.
Tahap pertama adalah dengan membuat form seperti gambar diatas, dan jangan lupa tambahkan 4 button, 1 textbox, OpenfileDialog dan Picturebox. Di asumsikan kita memiliki table dengan nama TbPic dengan field (ID dan Pic). Sekarang kita masuk ke coding. Untuk menampilkan file gambar kedalam Picture box ikuti sintaks berikut. OFD.Filter = "Image Files (*.jpg, *.bmp, *.gif, *.png)*.jpg; *.bmp; *.gif; *.png" OFD.ShowDialog() txtFileName.Text = OFD.FileName txtFileName.SelectionStart = txtFileName.Text.Length If Trim(txtFileName.Text) <> "" Then PicBox.Image = Image.FromFile(txtFileName.Text) End If Ikuti sintaks dibawah untuk memasukkan gambar kedalam table. Try Dim ms As New System.IO.MemoryStream() PicBox.Image.Save(ms, PicBox.Image.RawFormat) Dim CPic() As Byte = ms.GetBuffer ms.Close() Dim MyConnection As AccessData.DataBaseConnection = New AccessData.DataBaseConnection Dim myCommand As SqlCommand = New SqlCommand("Insert Into TbPic (ID,Pic) values (@ID,@Pic)", MyConnection.open)
myCommand.CommandType = CommandType.Text Dim parameterID As SqlParameter = New SqlParameter("@ID", SqlDbType.VarChar) parameterID.Value = "1" Dim parameterPic As SqlParameter = New SqlParameter("@Pic", SqlDbType.Image) parameterPic.Value = CPic With myCommand.Parameters .Add(parameterID) .Add(parameterPic) End With Dim result As SqlDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
Catch ex As Exception MsgBox(ex.Message) Finally MyConnection.close() End Try Lalu bagaimana caranya untuk menampilkan kembali tersebut ke dalam picture box. Berikut sintaks nya Try Dim arr() As Byte objCommand = MyConnection.open.CreateCommand objCommand.CommandText = ("select Pic from TbPic;") objdatareader = objCommand.ExecuteReader objdatareader.Read() arr = objdatareader.Item("Pic") PicBox.Image = Image.FromStream(New IO.MemoryStream(arr)) Catch ex As Exception MsgBox(ex.Message) Finally MyConnection.close() End Try