Emely.Net Banner Exchange
Emely.Net Banner Exchange

Home, Forum diskusi, Chatting, Download


Latihan 1

Judul : Memanfaatkan kontrol image untuk menampilkan Foto perserta

Pada Latihan ini kita akan meningkatkan fasilitas project Modul 4 Latihan 1 sebelumnya dengan kemampuan menampilkan foto dan menyimpan foto perserta. Adapun foto dari masing-masing peserta akan disimpan pada file-file eksternal yang diberi nama Fotox.bmp, dimana x disesuaikan dengan nomor record data dalam random file. Misalnya pada record 1, maka nama file fotonya adalah Foto1.bmp, record 2 nama file fotonya adalah Foto2.bmp, dst.

1. Bukalah project Modul 4 Latihan 1, dan tambahkan kontrol image serta command sehingga menjadi sebagai berikut :

Kontrol Properti Value
image1 name
stretch
imgFoto
True
command1 name
caption
cmdPaste
&Paste

2. Pada bagian general declaration tambahkan deklarasi variabel cFileFoto yang akan digunakan untuk menyimpan nama file foto. Adapun penamaan file foto adalah Fotox.bmp, dimana x disesuaikan dengan nomor record data dalam random file. Misalnya pada record 1, maka nama file fotonya adalah Foto1.bmp, record 2 nama file fotonya adalah Foto2.bmp, dst.

Dim cFileFoto As String

Sehingga menjadi seperti berikut :

'Deklarasi variabel Form Level
Dim DatPeserta As Peserta
Dim Posisi As Integer
Dim JlhRec As Integer
Dim Aksi As Integer
Dim cFileFoto As String                   'Ini yang ditambahkan

3. Lakukan koding untuk event klik pada cmdPaste yang berfungsi untuk mengisi kontrol imgFoto dengan isi dari Clipboard.

Private Sub cmdPaste_Click()
imgFoto.Picture = Clipboard.GetData       'Paste data dari Clipboard ke kontrol image
End Sub

4. Tambahkan koding pada bagian cmdUpdate klik dimana berfungsi menyimpan gambar dalam imgFoto ke media penyimpanan dengan nama Fotox.bmp, dimana x disesuaikan dengna nomor posisi record penulisan. Misalnya pada record 1, maka nama file fotonya adalah Foto1.bmp, record 2 nama file fotonya adalah Foto2.bmp, dst.

cFileFoto = "Foto" & Posisi & ".bmp"      'Buat nama file Fotox.bmp
If imgFoto.Picture <> LoadPicture Then    'Periksa apakah kontrol image kosong
   SavePicture imgFoto.Picture, cFileFoto 'Simpan gambar ke file dengan nama yang
End If                                    'telah dibuat

Sehingga menjadi sebagai berikut :

Private Sub cmdUpdate_Click()
If Aksi = flAdd Or Aksi = flEdit Then
   If Trim$(txtEmail.Text) = "" Then
      MsgBox "Alamat Email tidak bisa kosong"
      txtEmail.SetFocus
      Exit Sub
   End If
   If Trim$(txtNama.Text) = "" Then
      MsgBox "Nama tidak bisa kosong"
      txtNama.SetFocus
      Exit Sub
   End If
   If Aksi = flAdd Then
      JlhRec = JlhRec + 1
      Posisi = JlhRec
   End If
   DatPeserta.Email = txtEmail.Text
   DatPeserta.nama = txtNama.Text
   DatPeserta.Alamat = txtAlamat.Text
   DatPeserta.Kota = txtKota.Text
   DatPeserta.Negara = cboNegara.Text
   DatPeserta.Propinsi = cboPropinsi.Text
   DatPeserta.Tempat = txtTempat.Text
   DatPeserta.TglLahir = txtTglLahir.Text
   DatPeserta.Pria = chkPria.Value
   Put #1, Posisi, DatPeserta
   cFileFoto = "Foto" & Posisi & ".bmp"      'Bagian yang ditambahkan
   If imgFoto.Picture <> LoadPicture Then
      SavePicture imgFoto.Picture, cFileFoto
   End If
   Call Kunci
End If
End Sub

5. Pada Sub Tampil tambahkan koding yang berfungsi membaca file foto dari disk dan menampilkan ke kontrol image. Adapun proses yang dilakukan adalah membentuk nama file foto berdasarkan posisi record yang ditampilkan, kemudian memeriksa keberadaan file foto tersebut dalam media penyimpanan, jika ada, maka baca dan tampilkan pada kontrol imgFoto.

cFileFoto = "Foto" & Posisi & ".bmp"          'Bentuk nama file yaitu Fotox.bmp
If Dir(cFileFoto) <> "" Then                  'Periksa keberadaan file tersebut
   imgFoto.Picture = LoadPicture(cFileFoto)   'Baca dan tampilkan
Else
   imgFoto.Picture = LoadPicture
End If

Sehingga menjadi sebagai berikut :

Sub Tampil()
If Posisi > 0 Then
   Get #1, Posisi, DatPeserta
   txtEmail.Text = DatPeserta.Email
   txtNama.Text = DatPeserta.nama
   txtAlamat.Text = DatPeserta.Alamat
   txtKota.Text = DatPeserta.Kota
   cboNegara.Text = DatPeserta.Negara
   cboPropinsi.Text = DatPeserta.Propinsi
   txtTempat.Text = DatPeserta.Tempat
   txtTglLahir.Text = DatPeserta.TglLahir
   chkPria.Value = DatPeserta.Pria
   cFileFoto = "Foto" & Posisi & ".bmp"        'Ini yang ditambahkan
   If Dir(cFileFoto) <> "" Then
      imgFoto.Picture = LoadPicture(cFileFoto)
   Else
      imgFoto.Picture = LoadPicture
   End If
   Call Kosong
End If
Aksi = flNone
Call Kunci
End Sub

6. Jalankan software paintbrush, dan buka suatu file gambar, select suatu lokasi tertentu, kemudian klik Edit Copy.

7. Jalankan project diatas, dan klik pada Edit, kemudian klik pada Paste, dan Klik Update. Tutup program dan jalankan kembali, apakah foto masih ada disana ?


Dibuat  oleh hendra@indoprog.com
Medan - Sumatera Utara
Indonesia