Sejauh
ini, anda telah menuliskan sub procedure yang dibuat secara otomatis pada saat
menggunakan event . Sub procedure merupakan blok kode yang mempunyai nama dan
berisi perintah yang dapat dipanggil suatu waktu. Artinya, hanya sekali dibuat
yang kemudian di panggil berkali-kali sesuai dengan kebutuhan.
Bentuk
Umum :
[Private|Public] Sub subname[(argumentlist)]
Statements
End sub
Sub
Procedure dapat dipanggil dengan perintah :
[call] subname[(argumentlist)]
Keterangan
:
Sub procedure
(Procedure) sebaiknya menggunakan
kata kerja (verb)
Pemanggilan
procedure yang masih dalam satu kelas (class) atau modul (module) dapat
dilakukan dengan kata kunci Me.
Procedure
dapat menerima argument melalui nilai (by value) atau juga reference (by
reference). Jika menggunakan by value, nilai pada argument tidak berubah.
Sedangkan jika menggunakan by reference, nilai argument yang digunakan dapat
berubah sesuai dengan perintah dalam procedure.
Secara
default, argument dimasukkan melalui nilai (by value) dapat menggunakan kata
kunci ByVal dan ByRef untuk By Reference.
Syntaks
argument :
[ByVal|ByRef] variabelname as type
Contoh
:
a.
Procedure dengan argument di passing
sebagai value
Sub HitungVal(byVal as
Decimal)
A+=1
textAkhir.text=a
end sub
b.
Procedure dengan argument di passing
sebagai value
Sub HitungRef(byRef as
Decimal)
A+=1
textAkhir.text=a
end sub
c.
pemanggilan procedure
HitungVal(textAwal.Text)
2. Function (Fungsi)
Fungsi
mempunyai banyak kemiripan dengan sub procedure. Bedanya, fungsi selalu
mengembalikan nilai (return value)
Sintaks
fungsi dituliskan sebagai berikut :
[Private|Public] function functionname[(argumentlist)]
[As type]
Statements{
Functionname=expression
| {return expression}
End function
Keterangan
:
Perbedaan antara fungsi dengan procedure
hanyalah pada pengembalian nilai saja (return value).
Sebagai contoh :
Menggunakan
argument berupa nilai (by value) dan reference (by reference)
Pengembalian nilai dapat dilakukan
dengan menggunakan operator assignment “=” pada fungsi atau biasanya dengan
perintah return.
Contoh
:
Private Function cekData() as Boolean
if IsNumeric(TextAwal.text) then
return true
else
return false
endif
end function
if IsNumeric(TextAwal.text) then
return true
else
return false
endif
end function
Pemanggilan
fungsi
if cekData()=true then
HitungRef(textAwal.text)
else
messageBox.Show(“Data yang dimasukkan bukan angka”,”Kesalahan data”,
HitungRef(textAwal.text)
else
messageBox.Show(“Data yang dimasukkan bukan angka”,”Kesalahan data”,
MessageBoxButtons.OK,MessageBoxIcons.Error)
endif
3. Module (Modul)
Modul
merupakan bagian yang sengaja dipisahkan untuk memudahkan pemrograman. Dalam
module dapat dimasukkan procedure dan fungsi dan kemudian digunakan oleh
beberapa form.
-
Umumnya modul dideklarasikan secara
public (public) agar dapat digunakan di dalam kode dimanapun
-
Modul dapat diisi dengan main procedure
yang akan dijalankan pertama kali saat program dimulai
-
Modul merupakan salah satu argumentasi
code reuse yang bertujuan agar program
lebih efesien.
Sintaks
pembuatan modul sebagai berikut :
Module
moduleName
Statement
End module
Contoh
:
Module
Module
Public intResponce, RoleId, Msg As Integer
Public Username, Password, Nama As String
End
Module
CONTOH PROGRAM PROCEDURE
langkah-langkahnya ;
1. Buat project baru.
2. Desain form seperti pada gambar dibawah ini :
2. Desain form seperti pada gambar dibawah ini :
3. Tambahkan
kontrol ke form seperti pada gambar diatas dan atur propertinya seperti tabel
berikut:
4. Klik ganda pada Form, kemudian buatlah sub procedure Bersih berikut ini :
5. Panggil
procedure yang anda buat diatas dengan cara, klik ganda pada form load ketikkan
kode
program berikut ini :
6. Panggil procedure yang anda buat diatas pada BtnClear dengan cara, klik ganda pada BtnClear
kemudian ketikkan kode program berikut ini :
7. Buatlah Function Hitung, berikut ini :
8. Buatlah Procedure CekDataKosong dan sekaligus memanggil function Hitung, berikut ini :
9. Memanggil procedure CekDataKosong dengan cara, klik ganda pada tombol BtnHitung:
10. Klik ganda pada tombol BtnExit, Kemudian ketikkan kode program berikut ini :
11. Jalankan
aplikasi dengan menekan tombol F5
(di keyboard), atau melalui icon Start Debugging di
toolbar, atau melalui menu Debug > Start Debuging.
12. Simpan project anda.
hasilnya dapat dilihat pada gambar di bawah ini :
Object
|
Properties
|
Nilai
|
Form1
|
Name
Text
|
Form1
Barang
|
Label1
|
Text
|
Kode
Barang
|
Label2
|
Text
|
Nama
Barang
|
Label3
|
Text
|
Satuan
|
Label4
|
Text
|
Harga Satuan
|
Label5
|
Text
|
Jumlah
|
Label6
|
Text
|
Total
Harga
|
TexBox1
|
Name
|
TxtKodeBrg
|
TexBox2
|
Name
|
TxtNamaBrg
|
TexBox3
|
Name
|
TxtSatuan
|
TexBox4
|
Name
|
TxtHrgSatuan
|
TexBox5
|
Name
|
TxtJumlah
|
TexBox6
|
Name
|
TxtTot
|
Button1
|
Name
Text
|
BtnHitung
Hitung
|
Button2
|
Name
Text
|
BtnClear
Clear
|
Button3
|
Name
Text
|
BtnExit
Exit
|
4. Klik ganda pada Form, kemudian buatlah sub procedure Bersih berikut ini :
Sub
Bersih()
TxtKodeBrg.Text
= ""
TxtNamaBrg.Text
= ""
TxtSatuan.Text
= ""
TxtJumlah.Text
= ""
TxtHrgSatuan.Text
= ""
TxtTot.Text
= ""
TxtKodeBrg.Focus()
TxtTot.Enabled
= False
End Sub
program berikut ini :
Call
Bersih()
6. Panggil procedure yang anda buat diatas pada BtnClear dengan cara, klik ganda pada BtnClear
kemudian ketikkan kode program berikut ini :
Call
Bersih()
7. Buatlah Function Hitung, berikut ini :
Private Function
Hitung()
Dim Jumlah,
HrgSatuan, Total As Integer
Jumlah = TxtJumlah.Text
HrgSatuan = TxtHrgSatuan.Text
Total = Jumlah * HrgSatuan
TxtTot.Text = Total
Return Total
End Function
8. Buatlah Procedure CekDataKosong dan sekaligus memanggil function Hitung, berikut ini :
Sub
CekDataKosong()
If
TxtKodeBrg.Text = "" Then
MessageBox.Show("Kode
Barang harus diisi", "Konfirmasi",
MessageBoxButtons.OK, MessageBoxIcon.Warning)
TxtKodeBrg.Focus()
ElseIf
TxtNamaBrg.Text = "" Then
MessageBox.Show("Nama
Barang harus diisi", "Konfirmasi",
MessageBoxButtons.OK, MessageBoxIcon.Warning)
TxtNamaBrg.Focus()
ElseIf
TxtSatuan.Text = "" Then
MessageBox.Show("Satua
Barang harus diisi", "Konfirmasi",
MessageBoxButtons.OK, MessageBoxIcon.Warning)
TxtSatuan.Focus()
ElseIf TxtJumlah.Text = ""
Then
MessageBox.Show("Jumlah Barang harus
diisi", "Konfirmasi",
MessageBoxButtons.OK, MessageBoxIcon.Warning)
TxtJumlah.Focus()
ElseIf
TxtHrgSatuan.Text = "" Then
MessageBox.Show("Harga
Satuan Barang harus diisi", "Konfirmasi",
MessageBoxButtons.OK, MessageBoxIcon.Warning)
TxtHrgSatuan.Focus()
Else
Call Hitung()
End If
End Sub
9. Memanggil procedure CekDataKosong dengan cara, klik ganda pada tombol BtnHitung:
Call
CekDataKosong()
10. Klik ganda pada tombol BtnExit, Kemudian ketikkan kode program berikut ini :
Private Sub
CmbExit_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
CmbExit.Click
Dim
Tutup As String
Tutup = MessageBox.Show("Yakin tutup form ini ?", "Konfirmasi",
MessageBoxButtons.YesNo,MessageBoxIcon.Question)
MessageBoxButtons.YesNo,MessageBoxIcon.Question)
If
TUTUP = MsgBoxResult.Yes Then
End
Else
Exit
Sub
End If
End Sub
toolbar, atau melalui menu Debug > Start Debuging.
12. Simpan project anda.
hasilnya dapat dilihat pada gambar di bawah ini :
2.
Function
1.
TambahkanForm baru, dengannamaForm2.
2.
DesainTampilan form
sepertigambarberikutini :
3.
Tambahkankontrolke form
sepertipadagambardiatasdanaturpropertinyasepertitabelberikut:
Object
|
Properties
|
Nilai
|
Form1
|
Name
Text
|
Form1
Function
|
TexBox1
|
Name
|
TxtVar1
|
TexBox2
|
Name
|
TxtVar2
|
TexBox3
|
Name
|
TxtHasil
|
GroupBox1
|
Text
|
Operasi
|
RadioButton1
|
Name
Text
|
RdbAkar
AkarKuadrad
|
RadioButton2
|
Name
Text
|
RdbPangkat
Pangkat
|
RadioButton3
|
Name
Text
|
RdbPembagian
Pembagian
|
RadioButton4
|
Name
Text
|
RdbPerkalian
Perkalian
|
RadioButton5
|
Name
Text
|
RdbPenjumlahan
Penjumlahan
|
RadioButton6
|
Name
Text
|
RdbPengurangan
Pengurangan
|
Button1
|
Name
Text
|
BtnHitung
Hitung
|
Button2
|
Name
Text
|
BtnExit
Exit
|
4.
Klikkananpada form, kemudianpilih menu
view, kemudianketikdeklarasimasing-masingfungsisebagaiberikutini :
Function Akar(ByVal
a As Decimal) As String
Return
Math.Sqrt(a)
End Function
Function
Pangkat(ByVal a As Decimal, ByVal b As Decimal) As String
Return a ^ b
End Function
Function
Pembagian(ByVal a As Decimal, ByVal b As Decimal) As String
Return a / b
End Function
Function
Perkalian(ByVal a As Decimal, ByVal b As Decimal) As String
Return a * b
End Function
Function
Pemjumlahan(ByVal a As Decimal, ByVal b As Decimal) As String
Return a + b
End Function
Function
Pengurangan(ByVal a As Decimal, ByVal b As Decimal) As String
Return a - b
End Function
5.
KlikgandapadaTombolHitung,
kemudianketikkode program berikutini :
If
RdbAkar.Checked = True Then
TxtHasil.Text = Akar(TxtVar1.Text)
ElseIf
RdbPangkat.Checked = True Then
TxtHasil.Text = Pangkat(TxtVar1.Text, TxtVar2.Text)
ElseIf
RdbPembagian.Checked = True Then
TxtHasil.Text = Pembagian(TxtVar1.Text,
TxtVar2.Text)
ElseIf
RdbPerkalian.Checked = True Then
TxtHasil.Text = Perkalian(TxtVar1.Text, TxtVar2.Text)
ElseIf
RdbPenjumlahan.Checked = True Then
TxtHasil.Text = Pemjumlahan(TxtVar1.Text, TxtVar2.Text)
ElseIf
RdbPengurangan.Checked = True Then
TxtHasil.Text = Pengurangan(TxtVar1.Text, TxtVar2.Text)
End If
6.
JalankanaplikasidenganmenekantombolF5 (di keyboard), ataumelalui icon
Start Debugging di toolbar, ataumelalui menu Debug > Start Debuging.
7.
SimpanaplikasiAnda
3.MODULE
Module biasanya digunakan untuk mengurangi kode yang dimasukkan pada
form, module juga digunakan sebagai koneksi database untuk mempermudah
coding sebagai contoh akan menampilkan msgbox yang ditulis pada text1
form namun kodenya berada pada module lihat untuk penggunaan module:
Kemudian masukkan kode dibawah ini dihalaman module:
Sub buka()
MsgBox (Form1.Text1)
End Sub
Pada Form1 buatlah 1 text dan 1 Command dan klik 2 kali Command dan masukkan kode dibawah ini
module1.buka
Maka ketika dirun dan diklik Command1 akan keluar msgbox sesuai dengan yang diketikkan di text1
Kemudian masukkan kode dibawah ini dihalaman module:
Sub buka()
MsgBox (Form1.Text1)
End Sub
Pada Form1 buatlah 1 text dan 1 Command dan klik 2 kali Command dan masukkan kode dibawah ini
module1.buka
Maka ketika dirun dan diklik Command1 akan keluar msgbox sesuai dengan yang diketikkan di text1
3.
Module
Membuat module rumusmencariluassegitiga.
1.
Menambahkan module kedalam project
Berinama module tersebutsesuaidengan
yang diinginkan.
2.
Mengisi module dengan variable ataufungsi
3.
Tambahkan form dandesainseperticontohberikutini
Keterangan
:
Alas = txt_alas
Tinggi = txt_tinggi
HASIL = txt_hasil
HITUNG = hitung
4.
Tambahkankodepada button “HITUNG”
5. JalankanaplikasidenganmenekantombolF5 (di keyboard), ataumelalui icon
Start Debugging di toolbar, ataumelalui menu Debug > Start Debuging.
6.
SimpanaplikasiAnda
Module Module1
Sub Main()
‘BagianJudul
Console.WriteLine(“MenghitungLuas_Segitiga”)
Console.WriteLine(“————————“)
‘BagianJudul
Console.WriteLine(“MenghitungLuas_Segitiga”)
Console.WriteLine(“————————“)
‘BagianKamus
Dim A As Integer
Dim T As Integer
Dim luas As Double
Dim A As Integer
Dim T As Integer
Dim luas As Double
‘BagianDeskripsi
Console.Write(“Masukan A = “)
A = Console.ReadLine
Console.Write(“Masukan T = “)
T = Console.ReadLine
luas = (1 / 2 * A * T)
Console.WriteLine(“luas:” &luas)
Console.ReadLine()
End Sub
End Module
Console.Write(“Masukan A = “)
A = Console.ReadLine
Console.Write(“Masukan T = “)
T = Console.ReadLine
luas = (1 / 2 * A * T)
Console.WriteLine(“luas:” &luas)
Console.ReadLine()
End Sub
End Module
No comments:
Post a Comment