Basic Programing
Visual Basic
Oleh :
Aririk Japik, S.Kom
1 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Mengenal Visual Basic
2 dis us un o leh : Ar ir ik J ap ik, S .Ko mVisual Basic adalah salah satu bahasa pemrograman
komputer. Bahasa pemrograman adalah
perintah-perintah yang dimengerti oleh komputer untuk
melakukan
tugas-tugas
tertentu.
Bahasa
pemrograman Visual Basic, yang dikembangkan oleh
Microsoft
sejak
tahun
1991,
merupakan
pengembangan dari pendahulunya yaitu bahasa
pemrograman BASIC
Antar Muka Visual Basic
3 dis us un o leh : Ar ir ik J ap ik, S .Ko mObject
: komponen di dalam sebuah program
Property
: karakteristik yang dimiliki object
Method
: aksi yang dapat dilakukan oleh object
Event
: kejadian yang dapat dialami oleh object
Dalam pemrograman berbasis obyek (OOP),
kita perlu memahami istilah object, property, method
dan event sebagai berikut :
Mengenal Objek, properti, metode
dan event
4 dis us un o leh : Ar ir ik J ap ik, S .Ko mOBJEK KONTROL
•
Label merupakan objek control yang dapat menampilkan output tetapi
tidak dapat memberikan input pada saat dijalankan.
TextBox Merupakan objek control yang dapat diberikan input pada
saat program dijalankan.
•
Button merupakan objek control yang dapat mengeksekusi
perintah-perintah yang telah diberikan.
•
CheckBox dan RadioButton
•
CheckBox merupakan objek control yang berfungsi untuk memilih
beberapa item data. Dengan objek ini anda dapat lebih dari satu
pilihan dan bahkan memilih semua pilihan tersedia.
RadioButton fungsi hampir sama dengan checkbox, tetapi hanya dapat
memilih satu pilihan yang tersedia.
5 dis us un o leh : Ar ir ik J ap ik, S .Ko m
•
ComboBox merupakan objek control yang dapat
digunakan untuk menampilkan daftar item dengan pilihan
dropdown.
ListBox merupakan objek control yang jauh berbeda
dengan ComboBox hanya saja pada listbox menu daftar
pilihan ditampilkan secara kesuluruhan.
•
Timer dan DateTimerPicker
•
Timer merupakan objek control yang berfungsi untuk
mengatur dan menampilkan waktu yang diperlukan.
DateTimerPicker objek control yang berfungsi untuk
menampilkan tanggal dengan menu DropDown.
dis us un o leh : Ar ir ik J ap ik, S .Ko m 6
EVENT
•
DblClick
•
Event yang akan terpicu ketika object di double
click oleh pointer mouse pada layar.
•
Cth : Ketika melakukan double click pada objek
label.
•
GotFocus
•
Event yang akan terpicu ketika focus / kursor
berada berpindah menuju objek.
•
Cth : Ketika focus dari command button ke textbox.
7 dis us un o leh : Ar ir ik J ap ik, S .Ko m
EVENT
•
DblClick
•
Event yang akan terpicu ketika object di double
click oleh pointer mouse pada layar.
•
Cth : Ketika melakukan double click pada objek
label.
•
GotFocus
•
Event yang akan terpicu ketika focus / kursor
berada berpindah menuju objek.
•
Cth : Ketika focus dari command button ke textbox.
8 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Event
•
KeyPress
•
Event yang akan terpicu ketika tombol keyboard
ditekan. Pada event ini hanya terdapat 1 buah
parameter yaitu KeyAscii As Integer.
•
Keyascii merupakan kode ascii dari tombol keyboard
yang ditekan
•
Cth : Ketika tombol enter ditekan pada sebuah
textbox.
•
Load
•
Event yang akan terpicu ketika form diload atau
dijalankan.
•
Cth : Pada saat form diload atau dijalankan
9 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Latihan 1
Penggunaan Metode dan Property
10 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Pengaturan Pada Property
11 dis us un o leh : Ar ir ik J ap ik, S .Ko mHasil
12 dis us un o leh : Ar ir ik J ap ik, S .Ko mTest Case
13 dis us un o leh : Ar ir ik J ap ik, S .Ko mPrivate Sub Option1_Click()
Label2.ForeColor = vbBlue
End Sub
Private Sub Option2_Click()
Label2.ForeColor = vbRed
End Sub
Private Sub Check1_Click()
Label2.FontBold = Check1.Value
End Sub
Private Sub Check2_Click()
Label2.FontItalic = Check2.Value
End Sub
14 dis us un o leh : Ar ir ik J ap ik, S .Ko mPengenalan Lanjutan Objek
15 dis us un o leh : Ar ir ik J ap ik, S .Ko mPrivate Sub Form_Load() Combo1.AddItem “Keyboard" Combo1.AddItem “Mouse" Combo1.AddItem “Monitor" Combo1.AddItem “Printer" End Sub
Private Sub Command1_Click() List1.AddItem Combo1.Text End Sub
Private Sub Command2_Click() List1.RemoveItem List1.ListIndex End Sub
Private Sub Command3_Click() List1.Clear End Sub 16 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Tipe Data
17 dis us un o leh : Ar ir ik J ap ik, S .Ko mVisual Basic 6 mengenal beberapa type data,
antara lain :
String adalah type data untuk teks (huruf, angka dan
tanda baca).
Integer
adalah type data untuk angka bulat.
Single adalah type data untuk angka pecahan.
Currency
adalah type data untuk angka mata
uang.
Date adalah type data untuk tanggal dan jam.
Boolean
adalah type data yang bernilai TRUE
atau FALSE.
Dim <nama_variabel> As <type_data>
Contoh : Dim nama_user As String
Aturan di dalam penamaan variabel :
•
Harus diawali dengan huruf.
•
Tidak boleh menggunakan spasi.Spasi bisa diganti
dengan karakter underscore (_).
•
Tidak boleh menggunakan karakter-karakter khusus
(seperti : +, -, *, /, <, >, dll).
•
Tidak boleh menggunakan kata-kata kunci yang sudah
dikenal oleh Visual Basic 6 (seperti : dim, as, string,
integer, dll).
Penulisan Tipe Data
18 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Latihan
19 dis us un o leh : Ar ir ik J ap ik, S .Ko mPenggunaan Struktur
Kontrol IF Then
20 dis us un o leh : Ar ir ik J ap ik, S .Ko mStruktur kontrol di dalam bahasa pemrograman adalah perintah
dengan bentuk (struktur) tertentu yang digunakan untuk mengatur
(mengontrol) jalannya program.
Jenis Struktur Kontrol, yaitu :
1. Struktur kontrol keputusan - digunakan untuk memutuskan
kode program mana yang akan dikerjakan berdasarkan suatu
kondisi.
2. Struktur kontrol pengulangan - digunakan untuk melakukan
pengulangan kode program.
Penulisan IF... Then..
21 dis us un o leh : Ar ir ik J ap ik, S .Ko mBentuk penulisan (syntax) struktur IF…THEN :
1. IF <kondisi> THEN <kode program>
Bila <kondisi> bernilai True maka <kode program> akan
dikerjakan.
2. IF <kondisi> THEN
<blok kode program 1>
ELSE
<blok kode program 2>
END IF
Latihan IF.. Then
22 dis us un o leh : Ar ir ik J ap ik, S .Ko mPrivate Sub Command1_Click()
If Text1.Text = "nusantara" Then Image1.Visible = True
Penggunaan Struktur
Kontrol Select Case
23 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Bentuk penulisan (syntax) struktur SELECT…CASE :
SELECT CASE <pilihan>
CASE <pilihan 1>
<blok kode program 1> CASE <pilihan 2>
<blok kode program 2> CASE <pilihan n>
<blok kode program n> [CASE ELSE
<blok kode program x>
END SELECT
Struktur kontrol di dalam bahasa pemrograman adalah perintah dengan bentuk (struktur) tertentu yang digunakan untuk mengatur (mengontrol) jalannya program.
Latihan Select Case
24 dis us un o leh : Ar ir ik J ap ik, S .Ko mGunakan komponen Label, ListBox, TextBox dan CommandButton
Private Sub Command1_Click()
Dim harga As Currency, total As Currency
Dim jumlah As Integer Dim diskon As Single Dim satuan As String
If List1.Text = "" Then
MsgBox "Anda belum memilih barang !!" List1.ListIndex = 0 Exit Sub End If If Text1.Text = "" Then
MsgBox "Anda belum mengisi jumlah barang !!"
Text1.SetFocus Exit Sub
End If
Select Case List1.Text
Case "Disket" harga = 35000 satuan = "Box" Case "Buku" harga = 20000 satuan = "Lusin" Case "Kertas" harga = 25000 satuan = "Rim" Case "Pulpen" harga = 10000 satuan = "Pak" End Select 25 dis us un o leh : Ar ir ik J ap ik, S .Ko m
lblBarang.Caption = "Barang : " & List1.Text
lblHarga.Caption = "Harga : " & Format(harga, "Currency") & "/" & satuan lblJumlah.Caption = "Jumlah : " & Text1.Text & " " & satuan
Jumlah = Text1.Text
Select Case jumlah
Case Is < 10 diskon = 0 Case 10 To 20 diskon = 0.15 Case Else diskon = 0.2 End Select
total = jumlah * (harga * (1 - diskon))
lblDiskon.Caption = "Diskon : " & Format(diskon, "0 %")
lblTotal.Caption = "Total Bayar : " & Format(total, "Currency") End Sub 26 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Database
27 dis us un o leh : Ar ir ik J ap ik, S .Ko mAdalah sebuah sistem yang dibuat untuk
mengorganisasi data, menyimpan dan memanggil
data dengan mudah. Database terdiri dari
kumpulan data yang terorganisir sebagai pengguna
multi user. Dalam penyimpanan data saat ini sering
digunakan :
Microsoft Acces
, Mysql, SQL Server,
INPUT DATA MHS
28 dis us un o leh : Ar ir ik J ap ik, S .Ko m Jurusan Pilihan : • Akuntansi Komp. • Informatika Komp. • Multimedia • Manajemen BisnisRancangan Database
29 dis us un o leh : Ar ir ik J ap ik, S .Ko mKoneksi Access 2003
30 dis us un o leh : Ar ir ik J ap ik, S .Ko m•
Aktifkan Rerences terlebih dahulu
•
Ceklist : Microsoft DAO 3.6 Object Library
•
Klik OK
Menghubugkan Ke Ms. Acces
31 dis us un o leh : Ar ir ik J ap ik, S .Ko m•
Aktifkan Rerences terlebih dahulu
•
Ceklist : Microsoft ActiveX data
Objects 2.8 library
•
Klik OK
Pembuatan Koneksi
Database dan Tabel
32 dis us un o leh : Ar ir ik J ap ik, S .Ko m
Dim dbmahasiswa As Database
Dim tmahasiswa As Recordset
Private Sub Form_Load()Set dbmahasiswa = OpenDatabase(App.Path + "\dbmahasiswa.mdb")
Set tmahasiswa = dbmahasiswa.OpenRecordset("tmahasiswa“,dbOpenDynaset)
Membuat Sub Program
33 dis us un o leh : Ar ir ik J ap ik, S .Ko m Sub NonAktif() txtnim.Enabled = False txtnama.Enabled = False txtalamat.Enabled = False optlaki.Enabled = False optperempuan.Enabled = False cbojurusan.Enabled = False cmdsimpan.Enabled = False End Sub Sub Aktif() txtnim.Enabled = True txtnama.Enabled = True txtalamat.Enabled = True optlaki.Enabled = True optperempuan.Enabled = True cbojurusan.Enabled = True cmdsimpan.Enabled = True txtnim.SetFocus End SubSimpan Data
34 dis us un o leh : Ar ir ik J ap ik, S .Ko mPrivate Sub cmdsimpan_Click()
Dim Jenis As String
If optlaki.Value = True Then
Jenis = "Laki-Laki"
Else
Jenis = "Perempuan"
End If
With tmahasiswa
.AddNew
.Fields!nim = txtnim.Text
.Fields!nama = txtnama.Text
.Fields!jenis_kelamin = Jenis
.Fields!alamat = txtalamat.Text
.Fields!jurusan = cbojurusan.Text
.Update
MsgBox "Berhasil Disimpan Barang", vbInformation, "sukses"
End With
Menampilkan Grid Data
35 dis us un o leh : Ar ir ik J ap ik, S .Ko m• Pilih Komponen Data
• Klik menu project - Komponen
• Atau menekat tombol CTRL+T
• Drag Flexgrid ke dalam Form
Menampilkan Judul Grid
36 dis us un o leh : Ar ir ik J ap ik, S .Ko m Sub Aktifgrid() With Gridmhs Gridmhs.Cols = 3 .RowHeightMin = 300 .Col = 0 .Row = 0 .Text = "No." .CellFontBold = True .ColWidth(0) = 400 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .RowHeightMin = 300 .Col = 1 .Row = 0 .Text = "NIM" .CellFontBold = True .ColWidth(1) = 1500 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 2 .Row = 0 .Text = "Nama" .CellFontBold = True .ColWidth(2) = 2000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter End With End SubMenampilkan Isi Grid
37 dis us un o leh : Ar ir ik J ap ik, S .Ko m Sub Tampildatagrid() Dim Baris As Integer Gridmhs.ClearAktifgrid
Gridmhs.Rows = 2 Baris = 0
If tmahasiswa.BOF Then
MsgBox "Data tidak ditemukan", vbCritical, "error" Exit Sub
Else
With tmahasiswa .MoveFirst
Do While Not .EOF On Error Resume Next
Baris = Baris + 1 Gridmhs.Rows = Baris + 1 Gridmhs.TextMatrix(Baris, 0) = Baris Gridmhs.TextMatrix(Baris, 1) = !nim Gridmhs.TextMatrix(Baris, 2) = !nama .MoveNext Loop End With End If End Sub
Menu Utama
38 dis us un o leh : Ar ir ik J ap ik, S .Ko mMenu Editor
39 dis us un o leh : Ar ir ik J ap ik, S .Ko mKlik Tool
Form Login
40 dis us un o leh : Ar ir ik J ap ik, S .Ko mLogin
41 dis us un o leh : Ar ir ik J ap ik, S .Ko mIf txtusername.Text <> "" And txtpassword.Text <> "" Then tbl.FindFirst "username='" & txtusername.Text & "'" If tbl.NoMatch Then
MsgBox "Cek User Name dan Password", vbCritical, "Error" txtpassword.Text = ""
txtusername.Text = "" txtusername.SetFocus Else
If txtusername.Text = tbl.Fields(1) And txtpassword.Text = tbl.Fields(2) Then
MsgBox "Username dan password Benar", vbInformation, "Sukses" MenuUtama.Show vbModal
Else
MsgBox "User Name dan Password Masih Salah", vbExclamation, "Pesan" txtpassword.Text = "" txtusername.Text = "" txtusername.SetFocus End If End If End If
Pencarian Data
42 dis us un o leh : Ar ir ik J ap ik, S .Ko mPrivate Sub cmdcari_Click() Dim cari As String
Dim tanya As String
tanya = InputBox("Masukkan Kode USER yang akan dicari", "Pencarian")
cari = "kduser='" & tanya & "'" With tuser
.FindFirst cari
If tuser.NoMatch Then MsgBox "Data Tidak Ada" Else
MsgBox "Pencarian Ditemukan", vbInformation, "Cari" txtkode.Text = tuser.Fields(0) txtuser.Text = tuser.Fields(1) txtpass.Text = tuser.Fields(2) txtnama.Text = tuser.Fields(3) End If End With End Sub
Hapus Data
43 dis us un o leh : Ar ir ik J ap ik, S .Ko mPrivate Sub cmdhapus_Click() Dim Hapus As String
Hapus = MsgBox("Benar data ini mau dihapus", vbYesNo + vbExclamation, "Hapus")
If Hapus = vbYes Then tuser.Delete
MsgBox "Data berhasil di hapus dalam database", vbInformation, "Hapus"
Call betuserih
Call Tampildatagrid Else
MsgBox "Anda membatalkan proses penghapusan", vbInformation, "Batal"
Call betuserih End If
Edit Data
44 dis us un o leh : Ar ir ik J ap ik, S .Ko mPrivate Sub cmdedit_Click() If txtkode.Text = "" Then
MsgBox "Pilih data yang akan diedit", vbExclamation, "Warning" Else With tuser .Edit .Fields!kduser = txtkode.Text .Fields!UserName = txtuser.Text .Fields!Password = txtpass.Text .Fields!nama = txtnama.Text .Update
MsgBox "Data User Berhasil Di Edit", vbInformation, "sukses" Call Tampildatagrid
Call bersih End With End If End Sub