Kamis, 29 Agustus 2013

         Sekarang saya mau share nie cara memanggil,simpan & menampilkan gambar,.. Nah ada beberapa cara untuk memanggil,simpan & menampilkan gambar terkadang menggunakan cara menyimpan langsung gambar ke dalam database. Ada juga cara menyimpan hanya alamat gambar ke database kata-katanya sih supaya kapasitas database tidak berat dan memungkinkan untuk penyimpanan data skala besar. Nah sekarang saya mau share menggunakan cara kedua yaitu menyimpan data gambar dari folder di Direktori ke database. Dapet dari mbah google juga sih, ets..tapi saya gak copy paste loh.. en saya rubah2 dikit lah.. DIKIT,hehehhe.. Ok basa-basinya cukup sudah,sekarang waktunya berCODING-ria...jrenk..jrenk.. 

Berikut langkah – langkahnya :
Langkah Pertama        : buat tabel untuk simpan data gambar disini aku makai tb_foldergambar
Langkah Kedua           : buat 3 kolom yaitu kd_gambar(interger),nama(varchar),alamat(varchar)
Add caption
Langkah Ketiga           : buka vb.net nya ikutin gambar ini tp,sesuai dengan selera juga gak apa-apa sih,..

Add caption

 Dengan properti berikut;

Nama Kontrol
Values
Keterangan
Textbox
txt_kdgambar
Textbox kode gambar
Textbox
txt_nmgambar
Textbox nama gambar
Label
lbl_alamat
Label alamat gambar
Button
btnpilih
Button pilih gambar
Button
btnsimpan
Button simpan gambar
PictureBox
pct_gambar
PictureBox
OpenDialog1
OpenDialog1
OpenDialog1

Langkah Kelima           : Anda harus membuat koneksi terlebih dahulu. Disini saya memakai database Mysql dengan connector MyODBC-3.51.12-win32.

Source codenya untuk memanggil gambar :

Imports System.Data.Odbc
Public Class Form1
    Dim conn As New accesdata.koneksi
    Private PathFile As String = Nothing
    Dim sql As String
    Private Sub btnpilih_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnpilih.Click
        On Error Resume Next
        OpenFileDialog1.Filter = "JPG Files(*.jpg)|*.jpg|JPEG Files (*.jpeg)|*.jpeg|GIF Files(*.gif)|*.gif|PNG Files(*.png)|*.png|BMP Files(*.bmp)|*.bmp|TIFF Files(*.tiff)|*.tiff"
        OpenFileDialog1.FileName = ""
        If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
            pct_gambar.SizeMode = PictureBoxSizeMode.StretchImage
            pct_gambar.Image = New Bitmap(OpenFileDialog1.FileName)
            btnpilih.Enabled = True
            PathFile = OpenFileDialog1.FileName
            txt_nmgambar.Text = PathFile.Substring(PathFile.LastIndexOf("\") + 1)
            lbl_alamat.Text = OpenFileDialog1.FileName
            pct_gambar.Image = Image.FromFile(lbl_alamat.Text)
        End If
    End Sub

Source code untuk simpan gambar :

Private Sub btnsimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsimpan.Click
        Try
            sql = "Insert into tb_foldergambar (kd_gambar,nama,alamat) values (?,?,?)"
            Dim mycomm As OdbcCommand = New OdbcCommand(sql, conn.buka)
            With mycomm.Parameters
                .Add("?", OdbcType.VarChar, 10).Value = txt_kdgambar.Text.Trim
                .Add("?", OdbcType.VarChar, 50).Value = txt_nmgambar.Text.Trim
                .Add("?", OdbcType.VarChar, 100).Value = lbl_alamat.Text.Trim
            End With
            mycomm.ExecuteNonQuery()
            mycomm = Nothing
            MsgBox("Simpan Data Foto ke database berhasil", MsgBoxStyle.MsgBoxSetForeground, "Simpan")
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

Source code untuk Menampilkan gambar :

Private Sub txt_kdgambar_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txt_kdgambar.TextChanged
        Dim sql As String = ("select*from tb_foldergambar where kd_gambar ='" & txt_kdgambar.Text & "'")
        Dim cmd = New OdbcCommand(sql, conn.buka)
        Dim rd As OdbcDataReader
        rd = cmd.ExecuteReader
        rd.Read()
        If rd.HasRows Then
            txt_nmgambar.Text = rd.Item("nama")
            lbl_alamat.Text = rd.Item("alamat")
            pct_gambar.ImageLocation = rd.Item("alamat") 'untuk mencari lokasi gambar pada direktori
            pct_gambar.SizeMode = PictureBoxSizeMode.StretchImage
        End If
    End Sub


Semoga Bermanfaat