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
Min, coding ini buat apa yaa (sql, conn.buka) ...?
BalasHapussaya terapkan tp masih error.
itu memanggil dari class koneksi gan..
Hapuskebetulan saya pake koneksi odbc
kok gak bisa ya mimin
Hapuscara bikin koneksi odbc gmn min .?
BalasHapusini class koneksinya gan
HapusImports System.Data.Odbc
Imports System.IO
Imports Microsoft.VisualBasic
Namespace accesdata
Public Class koneksi
Dim conn As New Odbc.OdbcConnection("DSN=presensi")
Protected cmd As Odbc.OdbcCommand
Protected da As Odbc.OdbcDataAdapter
Protected ds As DataSet
Protected dt As DataTable
Public Function executeQuery(ByVal Query As String) As DataTable
cmd = New OdbcCommand(Query, conn)
da = New OdbcDataAdapter(cmd)
da.SelectCommand = cmd
ds = New Data.DataSet
da.Fill(ds)
dt = ds.Tables(0)
Return dt
dt = Nothing
da = Nothing
ds = Nothing
cmd = Nothing
End Function
Public Function buka() As OdbcConnection
If conn.State <> ConnectionState.Open Then
conn.Open()
End If
Return conn
End Function
Public Function tutup() As OdbcConnection
conn = Nothing
Return conn
End Function
Public Function ambiltgl()
buka()
buka()
Dim strsql As String = "select current_date tgl;"
Dim mycmd As New OdbcCommand(strsql, conn)
Dim rdr As OdbcDataReader = mycmd.ExecuteReader
If rdr.Read Then
dcservertgl = rdr("tgl").ToString()
End If
rdr.Close()
rdr = Nothing
mycmd = Nothing
Return conn
End Function
End Class
End Namespace
kemudian untuk memanggik koneksinya di form lain dg code ini :
Dim conn As New accesdata.koneksi 'KONEKSI
in class koneksinya?
Hapusga ngerti mba hehe
kalo di SQL server gmn ya?
BalasHapuskalo mau ini buat referensi
Hapushttps://social.msdn.microsoft.com/Forums/it-IT/f9ab632a-802b-476a-9716-043e012f80b2/tanya-cara-menampilkan-data-image-dari-mysql-ke-picturebox-di-vbnet?forum=visualbasicid
setelah +- 13 jam mencari..
BalasHapusakhirnya nemu ni mari..
makasih banyak min..
kalau ada tutorial langsung nyimpan ke database (tetap makai ODBC) tolong inbox ke email ane min : fadhlanarnis007@gmail.com
sekali lagi terima kasih banyak min
alhamdulillah gan jika postingan saya yg sederhana ini membantuh.. untuk pertanyaan yg sudah lama bangt tdk saya jawab.. mohon maaf gan.. karna saya sudah beberapa bulan ini off dari dunia coding :D
Hapusgan,, klo pindahin gambarnya langsung ke directory tempan simpan program gmna coding...???
BalasHapusmakasih bnyak min. dgn waktu 2 jam, baru bisa menyelesaikannya. meskipun class koneksinya kita berbeda.
BalasHapusalhamdulillah gan jika postingan saya yg sederhana ini membantuh..
Hapusbang gimana cara nyimpan alamat_gambarnya ke database mysql setelah itu kita tampilin lagi ke textbox
BalasHapusNtap mas bro makasi infonya semoga sukses yang buat blognya
BalasHapusgan ane kan bikin program visual studio 2010 dengan menggunakan database miscrosoft accses 2010 pas udah di inut data di programnya udah di di save, tapi ko pas di buka lagi programnya malah hilang datanya mohon pencerahanya gan
BalasHapusmungkin data base conction nya harus di update brow
HapusMin mw tanya kalo bikin.a pake koneksi SQL server gmn cara.a ya ???
BalasHapusKomentar ini telah dihapus oleh pengarang.
BalasHapus(sql, conn.buka)
BalasHapus"Extension .buka mksd nya apa ya?
Kenapa Windows.Forms masih saja salah ??
BalasHapusItu hruss buat apa, agar tidak salah ??
lihat di properties projectnya
HapusTarget Frameworknya .NET Berapa?
Windows.forms ganti ke System.Windows.Forms
Hapuscara memasukkan ke datagridview image column gimana?
BalasHapuskan itu varchar, maksudsaya konvernya gman?