January 6, 2009

Alternatif untuk mendownload artikel disini

@Looping Forever: bos sekedar saran aja tolong donk tutorial dan contoh source code nya diupload di server lokal macam indowebster.com dll thanks & bravo .Net indonesia

Atas saran rekan diatas, dan beberapa email dari rekan-rekan yang lain. Untuk yang memiliki masalah dengan link yang, Maka artikel saya berserta source code lengkapnya dapat di download pada link dibawah ini:
http://geeks.netindonesia.net/files/folders/source_codes_vb/default.aspx (Untuk source code)
Ini semua atas berbaik hatinya Mas Narenda dan Wely yang memberikan space untuk artikel dan source code saya di http://geeks.netindonesia.net/
Dan agar rekan-rekan yang lain mengetahui bahwa kita memiliki komunitas .net developer yang besar disana. Ayooo join ke milis dan buruan buat account di geeks.. tidak sekedar ilmu tapi teman juga bertambah...
Wassalam

Menampilkan gambar pada Datagridview

Pada artikel sebelumnya kita sudah mengerti bagaimana cara menginsert gambar kedalam table. Dan pada artikel ini kita akan membuat bagaimana menampilkan gambar-gambar tersebut kedalam DataGridView
.
Di asumsikan kita masih menggunakan pada Table yang sama seperti pada artikel sebelumnya. Lalu bagaimanakah sintaks untuk menampilkan gambar tersebut, dapat dilihat di bawah ini, penjabaran dari sintaks sudah ada dibawah.

Try
objDataTable.Clear()
'menampilkan data pada table TbPic
'start

strSQL = "Select * from TbPic"

objCommand = New SqlCommand
objCommand.Connection = MyConnection.open
objCommand.CommandType = CommandType.Text
objCommand.CommandText = strSQL
objDataAdapter = New SqlDataAdapter(objCommand)
objDataAdapter.Fill(objDataSet, "MDT_Pic")
MyConnection.close()
objDataTable = objDataSet.Tables("MDT_Pic")
'finish
DataGridView1.DataSource = objDataSet
DataGridView1.DataMember = "MDT_Pic"

DataGridView1.ShowCellToolTips = False

' menyembunyikan binary data (Field Pic)
DataGridView1.Columns("Pic").Visible = False

' Menambahkan image kolom pada gridview
Dim ImageCol As New DataGridViewImageColumn()
ImageCol.Name = "Gambar"
ImageCol.Width = 200
DataGridView1.Columns.Add(ImageCol)

For Each Row As DataGridViewRow In DataGridView1.Rows
'pertama, kita harus mengconvert binary data menjadi memory stream
'Kemudian, kita dapat menggunakan memory stream untuk membuat image object

Try
Dim ImageBytes() As Byte = Row.Cells("Pic").Value

Dim ms As New MemoryStream(ImageBytes)
Dim img As Image = Image.FromStream(ms)


'lalu, ikat (bind) image kolom
Dim ImageCell As DataGridViewImageCell = CType(Row.Cells("Gambar"), DataGridViewImageCell)
ImageCell.Value = img

'Sekrang kita dapat merelease original data
Row.Cells("Pic").Value = New Byte() {}

Row.Height = 100
Catch
'abaikan error dari image yang invalid
End Try

Next

Catch When Err.Number <> 0
MsgBox("Program Error" _
& vbCrLf & Err.Description)
MyConnection.close()
End Try

Semoga bermanfaat..
Wassalam

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
Mudah-mudahan artikel ini dapat membantu rekan-rekan yang request maupun tidak tentang artikel ini..
Wassalam