Postingan ini ditujukan kepada Bapak
Nandang Hermanto, S.Kom sebagai tugas ke-2 dari beliau untuk mata kuliah
Pemrograman Visual :
LATIAHAN 1
Nomor 3
Soal-soal
a. Apa yang menyebabkan program error
pada btalamat1_Click baris program alamat = "Kuningan"
b. Kenapa saat ditekan tombol nama1 dan
nama2 nama yang ditampilkan pada textbox nama
berbeda sedangkan saat ditekan tombol alamat1
dan alamat2 alamat yang ditampilkan pada
textbox alamat sama
c. Kenapa saat ditekan tombol tambah
umur 1 umur selalu keluar angka 1 sedangkan saat ditekan
tombol tambah umur 2 umur selalu
bertambah 1 dari umur sebelumnya
d. Berikan analisa
anda untuk form dua
a. Yang menyebabkan eror pada btalamat1_click adalah belum adanya konstanta / pengenal yang digunakan untuk menyimpan
data dan nilainya tidak dapat berubah ubah pada saat program dijalankan.
EROR = alamat = "Kuningan"
Txtalamat.Text = alamat
Seharusnya
= Const alamat = "Kuningan"
Txtalamat.Text
= alamat
b. Yang
menyebabkan nama kedua alamat sama adalah karena pada kedua pengenal/konstanta
yang ada pada kode program hanya satu alamat yaitu kuningan. Solusinya adalah mengganti
salah satu kode program, karena pada alamat1 sudah ada kuningan maka yang dirubah pada kode program yang berada di Public Class frmsatu, alamatnya diganti menjadi
misalkan “Purwokerto”.
Kode program sebelumnya Public Class frmsatu
Const
alamat = "Kuningan"
Kode program setelah dirubah Public Class frmsatu
Const
alamat = "Purwokerto"
c. - Karena
kode program pada tombol tambah umur1 adalah
Dim umur As Integer
umur += 1
txtumur.Text = umur
Jika menggunakan
Dim/variabel lokal maka data Hanya dikenal di tempat variabel tersebut dipesan
dan pada saat di klick maka angka yang muncul adalah 1 sesuai dengan pemesanan
umur += 1 , jika di klick kembali angka
yang sebelumnya akan hilang dan muncul angka yang sudah di pesan di awal
program.
- Sedangkan
pada tombol tambah umur2 berisi kode program
Static umur As
Integer
umur += 1
txtumur.Text = umur
Jika menggunakan
Static nilainya tidak akan hilang selam program dijalankan dan pada saat
diclick maka akan muncul angka 1 sesuai dengan pemesanan umur += 1, jika di
click kembali maka angka yang tadi
muncul tidak hilang dan akan ditambahkan 1 lagi dan seterusnya jika diklick
kembali.
d. Analisa Form Dua : Form Dua di munculkan melalui Form Satu, berikut kode
program yang ada di Form Satu (pada tombol Show Form Dua) untuk memunculkan
Form Dua :
FrmDua.showDialog()
Sedangkan kode-kode
program pada Form Dua di tuliskan di Module yang berfungsi Untuk memanggil beberapa function yang ada dalam
module tersebut dan function tersebut
sifatnya public yang artinya semua form dapat menggunkan function yang ada pada
mudule tersebut.
Berikut adalah
kode programnya secara keseluruhan :
Public Class frmsatu
Const alamat = "Purwokerto"
Private Sub
Btnama1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Btnama1.Click
Dim nama As String
nama
= "Nandang"
Txtnama.Text = nama
End Sub
Private Sub
Btnama2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Btnama2.Click
Txtnama.Text = nama
End Sub
Private Sub
Btalamat1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Btalamat1.Click
Const alamat = "Kuningan"
Txtalamat.Text = alamat
End Sub
Private Sub
Btalamat2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Btalamat2.Click
Txtalamat.Text = alamat
End Sub
Private Sub
Btshowform2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Btshowform2.Click
FrmDua.showDialog()
End Sub
Private Sub
Bttambahumur1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Bttambahumur1.Click
Dim umur As Integer
umur
+= 1
txtumur.Text = umur
End Sub
Private Sub
Bttambahumur2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Bttambahumur2.Click
Static umur As Integer
umur
+= 1
txtumur.Text = umur
End Sub
Private Sub
Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Label1.Click
End Sub
Private Sub
Txtnama_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Txtnama.TextChanged
End Sub
End Class
LATIHAN 2
Analisa : Pada kode program terdapat kesalahan di dalam
combobox, pada penulisan kode program di bagian Case Else yang bertulis seprti
ini :
Case Else
namabarang = ""
harga = 0
seharusnya
namabarang diisi barang terakhir yaitu namabarang
= “TAS” dan harganya diisi terserah, misalnya say tuliskan harga
= 75000
Jadi
kode programnya seharusnya seperti di bawah ini :
Dim kdbarang, namabarang As String
Dim harga As Single
kdbarang = cmbkode.Text
Select Case kdbarang
Case "SPT"
namabarang = "Sepatu"
harga = 200000
Case "SND"
namabarang = "Sandal"
harga = 100000
Case "TST"
namabarang = "T-Shirt"
harga = 150000
Case "TOP"
namabarang = "Topi"
harga = 50000
Case Else
namabarang = "TAS"
harga = 75000
End Select
txtnama.Text = namabarang
txtharga.Text = harga
End Sub
Menurut
saya ada kesalahan lagi namun tidak fatal yaitu kode program pada tombol clear
jika menggunakan kode program yang dari dosen maka jika kita akan membersihkan
data/text kita harus meng-click 2 kali pada tombol clear, jadi untuk
membenarkan kode programnya hanya di tukar tempat saja. Berikut penukarannya :
Kode program dari dosen :
Private Sub Btclear_Click(ByVal sender As
System.Object, ByVal
e As System.EventArgs)
Handles Btclear.Click
txtbayar.Clear()
txtdiskon.Clear()
txtharga.Clear()
txtjumlah.Clear()
txtnama.Clear()
txttotal.Clear()
Me.radiotunai.Checked = False
Me.radiokredit.Checked = False
cmbkode.Text
= ""
End Sub
Seharusnya :
Private Sub Btclear_Click(ByVal sender As
System.Object, ByVal
e As System.EventArgs)
Handles Btclear.Click
txtharga.Clear()
txtjumlah.Clear()
txtnama.Clear()
txttotal.Clear()
Me.radiotunai.Checked = False
Me.radiokredit.Checked = False
txtdiskon.Clear()
txtbayar.Clear()
cmbkode.Text = ""
End Sub
Berikut adalah
kode programnya secara keseluruhan :
Public Class Form1
Private Sub
Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
MyBase.Load
cmbkode.Items.Add("SPT")
cmbkode.Items.Add("SND")
cmbkode.Items.Add("TST")
cmbkode.Items.Add("TOP")
cmbkode.Items.Add("TAS")
End Sub
Private Sub
cmbkode_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
cmbkode.SelectedIndexChanged
Dim kdbarang, namabarang As
String
Dim harga As Single
kdbarang = cmbkode.Text
Select Case kdbarang
Case "SPT"
namabarang = "Sepatu"
harga = 200000
Case "SND"
namabarang = "Sandal"
harga = 100000
Case "TST"
namabarang = "T-Shirt"
harga = 150000
Case "TOP"
namabarang = "Topi"
harga = 50000
Case Else
namabarang = "TAS"
harga = 75000
End Select
txtnama.Text = namabarang
txtharga.Text = harga
End Sub
Private Sub
txtjumlah_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
txtjumlah.TextChanged
txttotal.Text = Val(txtharga.Text) * Val(txtjumlah.Text)
txtbayar.Text = Val(txttotal.Text) - Val(txtdiskon.Text)
End Sub
Private Sub
radiotunai_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
radiotunai.CheckedChanged
txtdiskon.Text = Val(txttotal.Text) * 10 / 100
txtbayar.Text = Val(txttotal.Text) - Val(txtdiskon.Text)
End Sub
Private Sub
radiokredit_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
radiokredit.CheckedChanged
txtdiskon.Text = 0
txtbayar.Text = Val(txttotal.Text) - Val(txtdiskon.Text)
End Sub
Private Sub
Btclear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Btclear.Click
txtharga.Clear()
txtjumlah.Clear()
txtnama.Clear()
txttotal.Clear()
Me.radiotunai.Checked = False
Me.radiokredit.Checked = False
txtdiskon.Clear()
txtbayar.Clear()
cmbkode.Text = ""
End Sub
Private Sub
Bttutup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Bttutup.Click
Me.Close()
End Sub
End Class
Alhamdulillah selesai juga Tugas yang
kedua ini. Semoga di tugas-tugas yang berikutnya tetap lancar. Amin.
Tidak ada komentar:
Posting Komentar