Kamis, 27 September 2012


Karena banyak pertanyaan dari teman-teman tentang bagaimana membuat program menyimpan foto di vb 6, Maka pada pembahasan kali ini saya akan membahas tentang bagaimana cara menampilkan dan menyimpan foto pada folder yang kita buat menggunakan visual basic 6. Untuk menyimpan foto, kita bisa menggunakan database atau tidak, pada program kali ini saya akan membuat program penyimpanan foto langsung ke folder foto yang saya buat, jadi foto tidak disimpan ke dalam database, tapi dalam folder foto yang sudah kita buat sebelumnya.
Sebelum kita mulai membuat programnya, buat dulu folder untuk tempat menyimpan database dan project yang akan kita buat, misalnya Latihan Foto, kemudian dalam folder latihan foto buat lagi folder dengan nama folderfoto untuk menampung foto-toto yang kita simpan nantinya.
Kemudian buat database access dengan nama dblatihan.mdb seperti dibawah ini :

Nama Database : dblatihan
Nama Tabel       : data
 
Field
Data Type
Size
NRP
Text
10
Nama
Text
30
Jurusan
Text
35

Simpan file database kedalam folder latihan foto yang sudah kita buat sebelumnya.
Kemudian buka Microsoft Visual Basic 6.0 dan desain form seperti dibawah ini :



Componen tambahan yang digunakan pada desain form diatas adalah :
- Microsoft ADO Data Control 6.0
- Microsoft Common Dialog Control 6.0
- Microsoft DataGrid Control 6.0

Kemudian ubah properti name pada masing-masing command menjadi seperti ini :
untuk command Simpan = cmdsimpan
- Edit = cmdedit
- Hapus = cmdhapus
- Bersihkan = cmdbersih
- Cari Foto = cmdcari
- Keluar = cmdkeluar

Setelah desain dan edit property sudah selesai, kita buat modul untuk koneksi database nya, lalu ketikkan kode berikut dalam jendela kode modul :

Public conn As New ADODB.Connection
Public RSdata As New ADODB.Recordset

Sub koneksi()
Set conn = New ADODB.Connection
Set RSdata = New ADODB.Recordset
conn.Open "Provider=microsoft.jet.oledb.4.0;data source = " & App.Path & "\dblatihan.mdb"
End Sub

Kemudian pada form activate dan form load ketikkan kode perintah berikut :
Private Sub Form_Activate() ' perintah untuk koneksi database saat form aktif
Call koneksi
Adodc1.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\dblatihan.mdb"
Adodc1.RecordSource = "data"
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
DataGrid1.Refresh
End Sub

Private Sub Form_Load() 
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text4.Enabled = False
End Sub

Buat sub Tampilkan data untuk menampilkan data saat pencarian data dilakukan :
Private Sub TampilkanData()
Text2 = RSdata!nama
Text3 = RSdata!jurusan
Text4 = App.Path & "\folderfoto\NRP_" & Text1.Text & ".jpg"
End Sub

Perintah untuk mencari data dengan acuan dari Text1 : 
Function CariData()
    Call koneksi
    RSdata.Open "Select * From data where nrp='" & Text1 & "'", conn
End Function

Perintah untuk mengosongkan text inputan :
Private Sub kosong()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
End Sub

Perintah untuk menyimpan foto ke dalam folderfoto yang sudah kita buat sebelumnya dengan me rename nama foto menjadi kode nrp dari mahasiswa :
Private Sub simpan()
SavePicture Image1.Picture, App.Path & "\folderfoto\NRP_" & Text1.Text & ".jpg"
End Sub

Perintah untuk tombol Cari Foto, untuk mencari dan membuka foto yang dipilih dari drive.
Private Sub cmdcari_Click()
cmndialog.ShowOpen
Text4 = cmndialog.FileName
End Sub
Perintah untuk tombol simpan, untuk menyimpan data pada database dan menyimpan foto kedalam folder.
Private Sub cmdsimpan_Click()
Dim SQLTambah As String
 Call simpan
            SQLTambah = "Insert Into data (nrp,nama,jurusan) values ('" & Text1 & "','" & Text2 & "','" & Text3 & "')"
            conn.Execute SQLTambah
            Form_Activate
End Sub

Perintah untuk tombol edit, untuk mengupdate data yang di edit pada database.
Private Sub cmdedit_Click()
 Dim SQLEdit As String
 Call simpan
            SQLEdit = "Update data Set nama= '" & Text2 & "'," & " jurusan='" & Text3 & "' where nrp='" & Text1 & "'"
            conn.Execute SQLEdit
            Form_Activate
End Sub

Perintah untuk tombol hapus, untk menghapus data2 yang ada pada database.
Private Sub smdhapus_Click()
Adodc1.Recordset.Delete
Adodc1.Recordset.Update
DataGrid1.Refresh
End Sub

Perintah untuk tombol bersih, yang berfungsi untuk membersihkan atau mengosongkan text yang ada pada textbox.
Private Sub cmdbersih_Click()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text1.SetFocus
End Sub
 
Perintah saat text1 kehilangan fokus maka akan langsung melakukan pencarian dengan memamnggil sub caridata dan tampilkandata untuk menampilkan data yang dicari.
Private Sub Text1_LostFocus()
Call CariData
        If Not RSdata.EOF Then
            TampilkanData
            MsgBox "Data Ditemukan"
            Else
            Text2.Text = ""
            Text3.Text = ""
            Text4.Text = ""
            End If
End Sub

Perintah untuk memanggil gambar melalui alamat gambar yang berada pada text4.
Private Sub Text4_Change()
Image1.Picture = LoadPicture(Text4)
End Sub

Jika Semua kode perintah pada masing-masing tool sudah di ketikkan kemudian Simpan Project ke dalam folder latihan foto yang sudah kita buat sebelumnya.,lalu coba jalankan program yang sudah kita buat, dan jika program sukses, hasilnya akan seperti ini :