Translate

Senin, 31 Desember 2012

program procedure


Contoh Program : Procedure Test

1. Aktifkan VB 6 melalui tombol Start.
2. Buka kembali project Latihan.vbp.
3. Tambahkan Form baru ke dalam Project.
4. Pada Jendela Form buatlah UI seperti ini :
5. (Gunakan komponen Label dan CommandButton) 

 
6. Pengaturan property setiap object-nya adalah sebagai berikut :

Opject
Properties
Value
Form11

Caption
StartUpPosition
Procedure Test
2 – Center Screen
Label1

Alignment
BackColor
Font
ToolTipText
2 – Center
Palette : <putih>
Size : 24
Dobel-Klik di Sini
Command1

Caption
ToolTipText
Sub Test
Klik di Sini
Command2
Caption
Function Test


7.       Buka Jendela Code, lalu pada bagian Code Editor ketikkan kode programnya sebagai berikut :

Private Sub TulisTeks(teks As String, warna As ColorConstants)
With Label1
.Caption = teks
.ForeColor = warna
End With
End Sub
Private Function JumlahAngka() As String
Dim angka1 As String, angka2 As String
Dim hasil As Single
angka1 = InputBox("Tulis angka 1 :", "Jumlah Angka")
angka2 = InputBox("Tulis angka 2 :", "Jumlah Angka")
If angka1 <> "" And angka2 <> "" Then
hasil = CSng(angka1) + CSng(angka2)
JumlahAngka = Cstr(hasil)
End If
End Function
Private Sub Label1_DblClick()
Call TulisTeks("Hai", vbBlue)
End Sub
Private Sub Command1_Click()
Call TulisTeks("Hallo", vbRed)
End Sub
Private Sub Command2_Click()
Label1.Caption = "Jumlah = " & JumlahAngka()
End Sub

8. Simpan Form11 (nama file : Lat11.frm).

Catatan : Anda bisa men-download file Lat1-11.zip.
Klik menu Project > Project1 Properties lalu klik tab General. Gantilah Startup Object-nya menjadi Form11.
Coba jalankan Project-nya :
􀂃 Dobel-klik Label1, akan muncul tulisan “Hai” dengan warna biru.
􀂃 Klik Command1, akan muncul tulisan “Hallo” dengan warna merah.
􀂃 Klik Command2, akan muncul kotak input.
􀂃 Ketikkan angka 5, lalu klik tombol OK.
􀂃 Ketikkan angka 10, lalu klik tombol OK.
􀂃 Akan muncul tulisan “Jumlah = 15”.

Dapat anda lihat bahwa prosedur Tulisteks dipanggil, dan dimasukkan 2 variabel ke dalamnya yaitu teks dan warna. Selanjutnya kedua argumen tersebut diolah oleh prosedure Tulisteks. Akhirnya ditampilkan tulisan dan warnyanya yang merupakan hasil dari properti Caption dan Forecolor dari obyek label.

1.4 Pernyataan Optional
Nilai argumen di dalam sebuah procedure dapat dibuat menjadi optional (boleh ada atau tidak ada). Bila nilai argumen yang optional tidak ada, maka yang digunakan adalah nilai default-nya. Untuk membuat nilai argumen menjadi optional, tambahkan pernyataan Optional di depan argumen-nya dan berikan nilai default-nya, contoh :
vbMagenta)
With Label1
.Caption = teks
.ForeColor = warna
End With
End Sub
Bila nilai argumen warna tidak ada, maka warna teks pada Label1 adalah magenta, contoh :
Call TulisTeks("Hallo")

1.5 Pernyataan ByRef dan ByVal
Nilai argumen yang dikirimkan ke dalam procedure bisa saja berasal dari sebuah variabel. Namun demikian, perlu diperhatikan bahwa nilai argumen yang dikirimkan ke dalam procedure bisa berdasarkan referensi (ByRef) atau berdasarkan nilai (ByVal). Default-nya nilai argumen dikirimkan berdasarkan referensi. Apabila variabel dikirimkan berdasarkan referensi, maka semua perubahan yang dilakukan terhadap argumen akan mempengaruhi variabel tersebut. Hal ini terkadang menimbulkan logical error. Sebagai ilustrasi perhatikan contoh berikut ini :
Dim Harga As Currency, Total As Currency
Private Sub HitungDiskon(HargaAwal As Currency, Diskon As Single)
HargaAwal = HargaAwal * (1 - Diskon)
Total = CCur(HargaAwal)
End Sub
Private Sub Command3_Click()
Harga = 10000
Total = 0
Call HitungDiskon(Harga, 0.1)
MsgBox "Harga " & Harga & " setelah diskon 10% menjadi " & Total
End Sub
Hasilnya 􀃆 Harga 9000 setelah diskon 10% menjadi 9000
Variabel Harga dikirimkan berdasarkan referensi (ByRef), sehingga perubahan pada argumen HargaAwal akan mempengaruhi variabel Harga.
Modifikasi procedure sub HitungDiskon menjadi sebagai berikut :
Private Sub HitungDiskon(ByVal HargaAwal As Currency, Diskon As Single)
HargaAwal = HargaAwal * (1 - Diskon)
Total = CCur(HargaAwal)
End Sub
Hasilnya 􀃆 Harga 10000 setelah diskon 10% menjadi 9000
Sekarang variabel Harga dikirimkan berdasarkan nilai (ByVal), sehingga perubahan pada argumen HargaAwal tidak akan mempengaruhi variabel Harga.
1.6 Procedure Built-in
VB6 menyediakan cukup banyak procedure yang siap-pakai (built-in) untuk berbagai ‘tugas’. Coba klik menu View – Object Browser atau tekan tombol F2 pada keyboard :

1. Cari module Strings pada bagian Classes.
2. Lihat daftar pada bagian Member of ‘Strings’ yang merupakan kumpulan procedure dengan ‘tugas’ pengolahan data string.
3. Klik nama procedure untuk mengetahui apa ‘tugas’-nya.