Selasa, Januari 30, 2007

Menyimpan Gambar Di Data Base MS Accses

Menyimpan Gambar Di Data Base MS Accses

Didalam komputer anda pastilah ada picture entah berupa .bmp,.gif,.tif,png serta ext yang lain. Nah disini kia saya akan memberikan beberapa trik bagaimana kita menyimpan data tersebut kedalam database.Sehingga gambar akan dirubah dalam bentuk binary. Jika anda memiliki koleksi atau apapun maka tidak ada salahnya anda menggunakan tips ini.tips ini sangatlah mudah dan tidak diperlukan kemampuan khusus yang diperlukan adalah anda tahu tentang sedikit pemrograman Visual Basic tentang database.

Hal hal yang harus anda persiapkan adalah Program Visual Basic,MS Access,dan Picture..Setelah siap kini tinggal memulai pembuatan aplikasi

Buka VB seperti biasa dan pilih Standard EXE dan ok
Masukan beberapa component kedalam form seperti properti dibawah ini
Component Caption Property
Data View Picture RecordSource=ImageStore
CommondDialog - Name = cdl
PictureBox - Name = Picture2
DataSource=Data1
DataField=picImage
Image - Name = Image1
DataSource=Data1
DataField=picImage
CommanButton &Back Name = mnuback
CommanButton &Exit Name = mnuexit
CommanButton &First Name = mnufirst
CommanButton &Last Name = mnulast
CommanButton &New Name = mnunew
CommanButton &Next Name = mnunext
CommanButton &Print Name = mnuprint
CommanButton &Fresh Name = mnurefres
CommanButton &Save Name = mnusave


Masukkan Ke KodeSource Code View


Private Sub Data1_Reposition()
Form1.Width = Image1.Width
Form1.Height = Image1.Height
Image1.Top = 0
Image1.Left = 0
End Sub
--------------------------------------------------------------------------------
Private Sub Data1_Validate(Action As Integer, Save As Integer)
Form1.Width = Image1.Width + 100

End Sub
--------------------------------------------------------------------------------
Private Sub Form_Load()
Data1.DatabaseName = App.Path & ("\Images.mdb")
Data1_Reposition
End Sub
--------------------------------------------------------------------------------
Private Sub Form_Resize()
Form1.Top = ((MDIForm1.Height / 2) - (Form1.Height / 2) - 600) + 200
Form1.Left = ((MDIForm1.Width / 2) - (Form1.Width / 2) - 600)
End Sub
--------------------------------------------------------------------------------
Private Sub mnuback_Click()
If Data1.Recordset.BOF Then
Data1.Recordset.MoveFirst
Else
Data1.Recordset.MovePrevious
End If
End Sub
--------------------------------------------------------------------------------
Private Sub mnuexit_Click()
End
End Sub
--------------------------------------------------------------------------------
Private Sub mnufirst_Click()
Data1.Recordset.MoveFirst
End Sub
--------------------------------------------------------------------------------
Private Sub mnulast_Click()
Data1.Recordset.MoveLast
End Sub
--------------------------------------------------------------------------------
Private Sub mnunew_Click()
Form2.Show
End Sub
--------------------------------------------------------------------------------
Private Sub mnunext_Click()
If Data1.Recordset.EOF Then
Data1.Recordset.MoveLast
Else
Data1.Recordset.MoveNext
End If
End Sub
--------------------------------------------------------------------------------
Private Sub mnuprint_Click()
Printer.PaintPicture Picture2.Picture, 0, 0
End Sub
--------------------------------------------------------------------------------
Private Sub mnurefres_Click()
Data1.Refresh
End Sub
--------------------------------------------------------------------------------
Private Sub mnusave_Click()
On Error GoTo ErrorSave
cdl.CancelError = True
cdl.FileName = picFile
cdl.ShowSave
SavePicture Picture2.Picture, cdl.FileName
GoTo EndSave
ErrorSave:
EndSave:
End Sub
--------------------------------------------------------------------------------
Private Sub mnuslide_Click()
Form3.Show
End Sub
--------------------------------------------------------------------------------
Private Sub Picture2_Change()
Dim h, w, MaxSize
MaxSize = MDIForm1.Height - 1200
w = Picture2.Picture.Width
h = Picture2.Picture.Height
If w > MaxSize Or h > MaxSize Then
If w >= h Then
Picture2.Width = MaxSize
Picture2.Height = (h / w) * MaxSize
Else
Picture2.Height = MaxSize
Picture2.Width = (w / h) * MaxSize
End If
Else
Picture2.Width = w
Picture2.Height = h
End If
Image1.Width = Picture2.Width
Image1.Height = Picture2.Height
End Sub
--------------------------------------------------------------------------------
Private Sub Timer1_Timer()
If Data1.Recordset.EOF Then
Data1.Recordset.MoveFirst
Else
Data1.Recordset.MoveNext
End If
End Sub
--------------------------------------------------------------------------------





Setelah Selesai ,Buat Form kedua sebagai input file gambar
Masukan beberapa component kedalam form seperti properti dibawah ini

Component Caption Property
Data View Picture RecordSource = ImageStore
CommondDialog - Name = cmdlFilePath
PictureBox - Name = Picture2
DataSource=Data1
DataField=picImage
Image - Name = Image1
DataSource=Data1
DataField=picImage
CommanButton &Add Name = Command1
CommanButton &Edit Name = Command2
CommanButton &Cancel Name = Command3
CommanButton &Delete Name = Command4
CommanButton &Browse Name = Command5

Source Code Inpute


Private Sub Command1_Click()

If Command1.Caption = "&Add" Then
Command5.Enabled = True
Command2.Enabled = False
Command4.Enabled = False
Command3.Enabled = True
Command1.Caption = "&Save"
Data1.Recordset.AddNew
ElseIf Command1.Caption = "&Save" Then
Command1.Caption = "&Add"
Command2.Enabled = True
Command4.Enabled = True
Command3.Enabled = False
Command5.Enabled = False
Data1.Recordset.Update
End If
End Sub
--------------------------------------------------------------------------------
Private Sub Command2_Click()
If Command2.Caption = "&Edit" Then
Command1.Enabled = False
Command4.Enabled = False
Command3.Enabled = True
Command5.Enabled = True
Command2.Caption = "&Save"
Data1.Recordset.Edit
ElseIf Command2.Caption = "&Save" Then
Command2.Caption = "&Edit"
Command1.Enabled = True
Command4.Enabled = True
Command3.Enabled = False
Command5.Enabled = False
Data1.Recordset.Update
End If
End Sub
--------------------------------------------------------------------------------
Private Sub Command3_Click()
Data1.Recordset.CancelUpdate
Command2.Enabled = True
Command1.Enabled = True
Command3.Enabled = False
End Sub
--------------------------------------------------------------------------------
Private Sub Command4_Click()
Data1.Recordset.Delete
End Sub
--------------------------------------------------------------------------------
Private Sub Command5_Click()
On Error Resume Next
With cmdlFilePath
.Filter = "JPG Files|*.JPG|Bitmaps|*.BMP"
.ShowOpen
Picture2.Picture = LoadPicture(.FileName)
End With
End Sub
--------------------------------------------------------------------------------
Private Sub Form_Load()
Data1.DatabaseName = App.Path & ("\Images.mdb")
End Sub
--------------------------------------------------------------------------------
Private Sub Picture2_Change()
Dim h, w, MaxSize
MaxSize = 1215
w = Picture2.Picture.Width
h = Picture2.Picture.Height
If w > MaxSize Or h > MaxSize Then
If w >= h Then
Picture2.Width = MaxSize
Picture2.Height = (h / w) * MaxSize
Else
Picture2.Height = MaxSize
Picture2.Width = (w / h) * MaxSize
End If
Else
Picture2.Width = w
Picture2.Height = h
End If
Image1.Width = Picture2.Width
Image1.Height = Picture2.Height
Image1.Picture = Picture2.Picture
End Sub


Nah setelah selesai kini tinggal buat databasenya
Buka MS Access,buat dengan property
Field Property Tabel Name
picImage Data Type =OLE Object ImageStore


Simpan dengan Nama images.mdb di folder yang sama dengan aplikasi anda
Dan selesai tinggal klik RUN atau F5 dan selesai dach
Selamat bekerja ya ...............!Moga berhasil

Tidak ada komentar: