MODUL Visual Basic2008
MODUL Visual Basic2008
Tujuan : Agar mahasiswa dapat menggunakan : 1. Label, Text Box, Command Button 2. property Name, Caption, Text, 3. event Load, Change, Click, Lostfocus, dan Gotfocus 4. fungsi UCase, LCase Persiapan : Menjalankan program Visual Basic, mengikuti Percobaan yang diberikan sesuai dengan urutannya. Mengerjakan Latihan-latihan yang diberikan. Pekerjaan : Membuat sebuah Form, merubah property, dan mengetikkan sedikit program Hasil : Sebuah program sederhana, untuk melakukan Login.
Pre Test
1. 2. 3. 4. Apakah saudara telah mengenal Visual Basic Apakah Saudara telah mengetahui Komponen yang ada di Visual Basic Apakah saudara mengetahui kegunaan dari Property apakah saudara mengetahui tentang Event
Teori
Dalam membuat program Visual Basic, menggambar tampilan merupakan suatu hal yang perlu untuk diketahui. Untuk dapat menggambar tampilan diperlukan pengetahuan tentang penggunaan komponen-komponen. Pada pertemuan kali ini, komponen yang akan digunakan adalah Label, Text Box, dan Command Button. Untuk memasukkan komponen, (atau lebih tepatnya menggambar form dengan komponen) dapat dilakukan dengan 2 cara : klik dua kali pada komponen di windows toolbox (gambar 1.1 a), atau dengan satu klik kemudian menggambar pada form. Setiap komponen yang ada pada Visual Basic memiliki property. Property adalah sifat dari sebuah komponen. Property untuk setiap komponen akan berbeda dengan komponen jenis lainnya. Walaupun ada beberapa property yang sama. Tidak semua property akan digunakan, hanya property yang dibutuhkan saja. Cara untuk merubah property sebuah komponen adalah dengan memilih komponen yang akan dirubah pada form, kemudian pilih property yang akan dirubah pada window property (gambar 1.1 b) dan kemudian pilih atau rubah isi dari property tersebut. Cara kedua untuk merubah property adalah dengan menggunakan perintah Visual Basic, pada bagian windows Code. Caranya pilih event tempat program, kemudian tuliskan nama objek (komponen) diikuti ".", dan nama propertynya. Untuk contoh dapat dilihat pada bagian latihan Visual Basic merupakan bahasa pemrograman yang bersifat event-driven. Maksudnya perintah (statement program) akan dijalankan sesuai dengan event yang terjadi. Setiap komponen memiliki event yang jumlahnya tidak sedikit, dan mungkin berbeda-beda. Akan tetapi tidak semua event akan digunakan. Oleh karena itu pada pertemuan kali ini akan dikenalkan tentang penggunaan event Load, Clik, Lostfocus, dan juga Gotfocus. 1
Event Load terjadi pada saat komponen akan diletakkan di memory. Event Click terjadi pada saat sebuah komponen di klik, baik menggunakan keyboard ( biasanya tombol spacebar ), atau menggunakan tombol kiri mouse (tergantung setting mouse). Event Change terjadi saat tulisan yang ada dirubah. Event Lostfocus terjadi pada saat focus object meninggalkan sebuah komponen. Event Gotfocus terjadi pada saat focus object memasukki sebuah komponen.
Untuk menambahkan fungsionalitas dari sebuah program maka harus diketahui pula tentang struktur kontrol. Ada dua struktur kontrol pada teknik pemrograman, yaitu Kondisi dan perulangan. Pada pertemuan ini akan dikenalkan perintah kondisi sederhana, "IF".
Percobaan
1. Buat sebuah project Standard Exe baru 2. Masukkan beberapa komponen kedalam Form yang ada, sehingga form akan berbentuk seperti gambar 1.2
Gambar 1.2
3. Rubah property untuk masing-masing komponen sesuai tabel berikut : Komponen Label1 Label2 Text1 Text2 Command1 Property Name Caption Name Caption Name Text Name Text Name Caption Isi lblNama User ID lblPassword Password txtUserID (kosong) txtPassword (kosong) cmdOk &Ok
Perubahan yang dilakukan terhadap property (Text dan Caption) akan menyebabkan berubahnya tulisan pada form. Sedangkan property Name akan memberikan nama untuk setiap komponen yang ada. Perhatikan pada window property. 4. Klik dua kali pada Form (bukan pada komponen), sehingga dapat dilihat tampilan seperti gambar 1.1 c. Kemudian tambahkan perintah pada bagian tersebut sehingga terdapat program sebagai berikut :
Private Sub Form_Load() Msgbox ("Selamat Datang") End Sub
Program diatas akan menampilkan tulisan "Selamat Datang" pada sebuah message box. 5. Kemudian pada window Code, pilih object (komponen) cmdOk, dan juga pilih event Click. Sehingga dapat dituliskan perintah sebagai berikut :
Apabila tombol (command button) ditekan maka program akan diakhir. 6. Pada event Change untuk txtUserID, tambahkan perintah berikut :
Private Sub txtUserID_Change() txtUserID.Text = UCase(txtUserID.Text) End Sub
Dengan adanya program tersebut, maka setiap huruf yang diisikan akan dirubah menjadi huruf besar. 7. Event Lostfocus dan GotFocus akan digunakan pada komponen txtUserID. Property text dari Komponen dengan nama txtUserID akan dikosongi setiap kali GotFocus, dan akan ditampilkan pesan "Harus diisi" apabila isi Property Text dari komponen tersebut kosong. Untuk itu tambahkan perintah berikut :
Private Sub txtUserID_GotFocus() txtUserID.Text = "" End Sub Private Sub txtUserID_LostFocus() If txtUserID.Text = "" Then MsgBox "Harus diisi" End If End Sub
Latihan
1. Rubahlah property property yang ada sehingga tampilannya menjadi lebih berwarna, dan bentuk tulisan (font) beraneka ragam. 2. Rubahlah property untuk txtPassword agar karakter yang diisikan tidak terlihat (PasswordChar) 3. Tambahkan program untuk menampilkan pesan "Harus diisi" apabila txtPassword tidak diisi. Dan kosongi txtPassword setiap kali password akan diisikan. 4. Rubahlah tulisan pada form dari tulisan "Form1" menjadi tulisan "Login" 5. Tambahkan program sehingga semua password yang diisikan akan dirubah menjadi huruf kecil sewaktu Focus meninggalkan txtPassword. 6. Tambahkan program sehingga sewaktu tombol "Ok" di tekan akan menampilkan message box yang bertuliskan User ID dan Password yang ditampilkan. 7. Rubahlah urutan tabindex sehingga nomer tabindex akan urut mulai dari lblNama, txtUserID, lblPassword, txtPassword dan terakhir cmdOk.
Laporan
1. Tuliskan kegunaan dari property tabindex 2. Tambahkan program sehingga dapat menampilkan pesan bahwa Nama dan Password benar, sewaktu command button ditekan. Catatan Nama yang benar adalah "VB" dan Password yang benar adalah "Visual Basic". 3. Sebutkan perbedaan antara Option Group dan Check Box.
4. 5. 6. 7.
Sebutkan fungsi dari property enabled dan visible Cari diinternet kegunaan dari property keypreview pada Form. Buatlah summary untuk percobaan dan latihan yang telah dilakukan. Buat kesimpulan untuk praktikum kali ini.
MODUL II
Tujuan : 1. menggunakan option group, check box 2. menggunakan property enabled, visible 3. menggunakan keypress, keypreview pada form, 4. menggunakan method setfocus 5. menggunakan kondisi Persiapan : Menjalankan program Visual Basic, mengikuti Percobaan yang diberikan sesuai dengan urutannya. Mengerjakan Latihan-latihan yang diberikan. Pekerjaan : Membuat program dengan menggunakan komponen option group dan check box, serta menggunakan property dari komponen dan event pada form. Hasil : Sebuah program sederhana, dengan menggunakan komponen option group dan check box.
Pre Test
1. Apakah saudara telah mengenal komponen yang ada di Visual Basic. 2. Apakah saudara pernah menggunakan option group dan check box. 3. Apakah saudara pernah menggunakan event dari komponen atau form.
Percobaan
1. Buat sebuah project Standard Exe baru 2. Buat form seperti yang dibawah
Penjelasan : Buat 2 Label Buat 3 Textbox txthasil. Buat 2 Frame dan Hobby yang caption-nya diberi nama NRP dan Nama. yang name diberi nama txtnrp, txtnama, dan yang caption diberi nama menjadi Jenis Kelamin
Buat 2 Option Button diberi nama caption nya laki dan perempuan, kemudian ganti name nya menjadi optlaki dan optperempuan. Buat 4 Check box diberi nama caption berenang, tidur, makan, music, kemudian ganti name nya menjadi chk1,chk2,chk3, dan chk4. Txthasil untuk property nya diganti Multiline = True dan ScrollBars = 2 3. Membuat Objek aktif dengan property setfocus dan menggunakan event keypress bila menekan tombol Enter.
Private Sub txtnrp_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then txtnama.SetFocus Else End Sub
Penjelasan : a. Dim jk As String, hobby As String merupakan variable string b. vbNewline adalah function untuk mengganti baris baru c. & _ untuk mempermudahkan pengkodingan agar bisa di lanjutkan digaris baru. 6. Bila anda mau menghilangkan Check Box Berenang pada saat program dijalankan
Private Sub Form_Load() chk1.Visible = False End Sub
7. Menggunakan event keypress dengan menggunakan tombol Escape pada form untuk keluar dari program. Anda harus mengganti property di form Keypreview = true.
Private Sub Form_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyEscape Then End End If End Sub
Latihan
8. Sempurnakan program diatas,.tambahkan property setfocus agar bisa pindah objek dengan menggunakan tombol Enter di tiap objek. 9. Tambahkan event keypress pada txtnrp agar bisa diisi angka saja. 10. Tambahkan koding bila di tekan tombol Ok, Check Box yang tidak kepilih otomatis visible nya menjadi false.
Laporan
1. 2. 3. 4. 5. 6. 7. Tuliskan kegunaan dari event Keypress, KeyPreview Sebutkan perbedaan antara combo box dan list box Sebutkan fungsi dari property listindex, list dan clear Tuliskan kegunaan dari method additem dan removeitem Cari di internet kegunaan dari event mouse down, mouse up, mouse move Buatlah summary untuk percobaan dan latihan yang telah dilakukan. Buat kesimpulan untuk praktikum kali ini.
MODUL III
Tujuan : Agar mahasiswa dapat menggunakan : 1. combo box, list box 2. property listindex, list,clear 3. method additem, removeitem 4. event mouse down, mouse up, mouse move 5. perulangan Persiapan : Menjalankan program Visual Basic, mengikuti Percobaan yang diberikan sesuai dengan urutannya. Mengerjakan Latihan-latihan yang diberikan. Pekerjaan : Membuat sebuah Form, merubah property, dan mengetikkan sedikit program Hasil : Sebuah program sederhana, untuk mencatat data diri.
Pre Test
1. 2. 3. 4. Apakah saudara pernah menggunakan komponen ComboBox dan ListBox Apakah Saudara telah mengetahui jenis perulangan yang ada di Visual Basic Apakah saudara mengetahui mengambil jam dari sistem Apakah saudara mengetahui event Mouse Down, Mouse Up dan Mouse Move
Teori
Pada pertemuan kali ini, komponen yang akan digunakan adalah ComboBox dan ListBox namun masih tetap menggunakan komponen lainnya seperti Label, TextBox, dan CommandButton. Komponen ComboBox dan ListBox memiliki beberapa method yang sama untuk mengatur isi (item) di dalamnya, yaitu : 1. AddItem method ini akan menambah isi sesuai dengan argument yang diberikan berupa tulisan.Setiap kali ada isi yang ditambahkan akan diberikan nomer index secara otomatis dimulai dari 0 (nol). 2. RemoveItem method ini akan menghapus isi sesuai dengan argument yang diberikan berupa nomer index dari isi yang dipilih. Setiap kali ada isi yang dihapus maka nomer index akan disusun ulang secara otomatis. Bila isinya tidak ada (kosong) nomer index-nya adalah 1. 3. List method ini akan menunjukkan text pada index yang akan dituju sesuai dengan argument yang diberikan berupa nomer index. 4. ListIndex method ini akan menunjukkan index yang ada pada objek list. 5. Clear method ini akan menghapus semua isi (tidak membutuhkan argument). Contoh :
Combo1.AddItem Umar
10
Umar adalah argument sebagai isi yang akan ditambahkan ke dalam object Combo1.
List1.AddItem Paijo
Paijo adalah argument sebagai isi yang akan ditambahkan ke dalam object List1.
List1.List (0) = Super Bejo
Merubah isi dari objek list yang mempunyai nomor index 0 dengan Super Bejo .
List1.RemoveItem (0)
Property 0 adalah argument sebagai nomer index isi yang akan dihapus.
List1.Clear
Semua isi object List1 akan dihapus. Kali ini kita juga akan menambahkan beberapa event lagi seperti Mouse Down, Mouse Up dan Mouse Move. Event MouseDown terjadi pada saat mouse ditekan pada sebuah objek. Event MouseUp kebalikan dari MouseDown yaitu saat mouse diangkat dari sebuah objek. Event MouseMove terjadi pada saat komponen dilewati oleh mouse.
Perulangan. Dalam Visual Basic kita mengenal beberapa jenis perulangan, kali ini akan dibahas beberapa jenis perulangan yang terdapat dalam Visual Basic seperti For Next , Do While Loop, Do Loop Until dan While Wend. Cara penulisan : For Next
For[parameter]=[nilai awal] to [nilai akhir]|[step][range] <statement> Next [parameter]
Do While Loop
Do While [kondisi] <statement> Loop
Do Loop Until
Do Loop <satement> Until [kondisi]
11
While Wend
While [kondisi] <statement> Wend
Percobaan
1. Buat sebuah project Standard Exe baru 2. Masukkan beberapa komponen kedalam Form yang ada, sehingga form akan berbentuk seperti gambar 3.1
Gambar 3.1 3. Rubah property untuk masing-masing komponen sesuai tabel berikut : Komponen Form1 List1 Command1 Command2 Command3 Command3 Command4 Property Name Name Name Caption Name Caption Name Caption Name Caption Name Caption Isi FrmHobby LstHobby CmdOk &OK CmdTambah &Tambah CmdHapus &Hapus CmdBersih &Bersih CmdExit &Exit
4. Tambahkan perintah pada Event Form_Load sehingga terdapat program sebagai berikut : Private Sub Form_Load() LstHobby.AddItem "Mancig" LstHobby.AddItem "Membaca"
12
LstHobby.AddItem "Jalan-jalan" LstHobby.AddItem "Lari-lari" LstHobby.AddItem "Tidur" End Sub 5. Kemudian pada CommandButton (CmdOK, CmdTambah, CmdHapus, CmdBersih, CmdExit) tambahkan juga code program seperti berikut :
Private Sub CmdOK_Click()
End Sub
Private Sub CmdHapus_Click()
Latihan 3.1
1. Buat sebuah project Standard Exe baru 2. Masukkan beberapa komponen kedalam Form yang ada, sehingga form akan berbentuk seperti gambar 3.2
13
Label
Gambar 3.2 3. Rubah property untuk masing-masing komponen sesuai tabel berikut : Komponen Property Isi Combo1 Name CmbTim Text1 Name TxtPelatih Text (kosong) Appearance 0 Flat Image1 Name ImgFoto Appearance 0 Flat Stretch True Command1 Name CmdTampil Caption &Tampilkan Gambar Command2 Name CmdOk Caption &Ok Command3 Name CmdExit Caption &Exit Label1 Name LblInformasi Caption (kosong) Appearance 0 Flat BorderStyle 1 Fixed Single 4. Isi daftar nama Tim (CmbTim) minimal sebanyak 5 nama. 5. Pada TextBox (TxtPelatih) data sebagai Inputan. 6. Jika tombol Tampil (CmdTampil) diclick maka tampilkan objek foto tsb pada kotaknya, anda dapat mangambil objek gambar dengan format Bmp, Jpg, Gif dll. 7. Jika tombol OK (CmdOk) diclick maka memo informasi (LblInformasi) akan tampil informasi nama Tim dan nama pelatih seperti tampak pada gambar 3.2. 8. Tombol Exit jika diclick program dihentikan. 14
Latihan 3.2
1. Buatlah sebuah Form sehingga tampak seperti gambar 3.3. ListBox
CommandButton
TextBox ComboBox
Gambar 3.3 2. Rubah property untuk masing-masing komponen sesuai tabel berikut : Komponen Property Isi List1 Name LstSumber List2 Name LstPilih Command1 Name CmdAddKiri Caption > Command2 Name CmdAddKanan Caption < Command3 Name CmdAllKiri Caption >> Command4 Name CmdAllKanan Caption << Command5 Name CmdAdd Caption &Add Text1 Name TxtJml Text (kosong) Combo1 Name CmbItem 3. Isi daftar nama pada data sumber (LstKiri) miniman 5. 4. Jika tombol > (CmdAddKiri) ditekan maka item yang diplih pada data sumber akan dipindahkan ke data pilihan (LstPilih). 5. Jika tombol < (CmdAddKanan) ditekan maka item yang diplih pada data pilihan akan dipindahkan kembali ke data sumber. 6. Jika tombol >> (CmdAllKiri) ditekan maka semua item pada data sumber akan dipindahkan ke data pilihan. 7. Jika tombol << (CmdAllKanan) ditekan maka semua item pada data pilihan akan dipindahkan kembali ke data sumber. 8. Jumlah item pada TxtJml merupakan inputan (berupa angka), jika jumlah item telah terisi dan tombol Add (CmdAdd) ditekan maka akan muncul InputBox
15
seperti tampak pada gambar 3.4 untuk menambahkan item pada ComboBox (CmbItem). - gunakan fungsi InputBox dengan perulangan sesuai dengan jumlah item yang diinputkan.
Gambar 3.4 9. Jika mouse didekatkan / berada di atas tombol Add (CmdAdd) maka warna Background pada tombol Add akan berubah warna, dan jika dijauhkan dari tombol Add maka warna Background pada tombol Add akan kembali seperti semula (gunakan event MouseMove). 10. Atur form sedemikian rupa sehingga tampak rapi.
Latihan 3.3
1. Buatlah Form seperti tampak pada gambar 3.5 2. Isi daftar nama font minimal 5 pada list font, begitu juga dengan font style (yaitu Reguler, Italic, Bold & Bold Italic) dan font size, seperti tampak pada gambar 3.5 3. Jika List pada Format Font (FontName, FontStyle, FontSize) dipilih maka akan tampil pada label sample sesuai dengan pilihan format font, begitu juga effect yang dipilih (pada CheckBox) yaitu Underline dan Strikeout akan memberikan effect pada label sample seperti tampak pada Gambar 3.5 4. Jika tombol OK ditekan maka akan tampil MessageBox dengan tampilan sesuai dengan label sample (gunakan form baru untuk membuat MessageBox) seperti tampak pada gambar 3.6 5. Jika tombol Cancel ditekan maka program akan dihentikan.
16
TextBox ListBox
Label
CheckBox
Gambar 3.5
Gambar 3.6
Laporan
1. Buatlah Form seperti tampak pada gambar 3.7 - Nama dan alamat merupakan inputan. - Jika tombol Cetak ditekan maka akan menampilkan data diri pada memo hasil sesuai dengan data yang ada pada frame Input Data, seperti yang tampak pada gambar 3.7. - Nama hobby yang ditampilkan pada memo hasil sesuai dengan semua hobby yang dipilih pada list Hobby (pilihan bisa lebih dari satu) - Pada Frame jenis kelamin menggunakan OptionButton. - Pada tombol Tambah (ComboBox Pendidikan, Pekerjaan dan ListBox Hobby) jika ditekan maka akan muncul InputBox untuk menambahkan Item pada ComboBox (Pendidikan dan Pekerjaan) atau ListBox (Hobby). - Jika tombol Clear ditekan maka akan mengosongkan form inputan (Nama, Alamat) dan Item yang dicentang pada list Hobby kembali kembali kosong. - Tanggal dan Jam akan tampil secara ostosmatis saat program dijalankan sesuai dengan tanggal dan jam sistem. - Jika tombol Exit ditekan maka program akan dihentikan.
17
Gambar 3.7 2. Sebutkan kegunaan fungsi operasi string (left, right, mid,len,ucase,lcase) 3. Buatlah summary untuk percobaan dan latihan yang telah dilakukan. 4. Buat kesimpulan untuk praktikum kali ini.
18
MODUL IV
Tujuan : Agar mahasiswa dapat menggunakan : 1. Operasi string (Left, Right, Mid,Len,UCase,LCase) 2. Operasi tanggal (DateDiff,DateAdd,Format,Date,Now,Day,Month,Year) Persiapan : Menjalankan program Visual Basic, mengikuti percobaan yang diberikan sesuai dengan urutannya. Mengerjakan latihan-latihan yang diberikan. Pekerjaan : Membuat sebuah form dan mengetikkan coding program Hasil : Sebuah program sederhana untuk mengetahui angkatan dan program studi
Pre Test
1. Apakah saudara telah mengenal variabel ? 2. Apakah saudara dapat mendeklarasikan variabel ? 3. Apakah saudara telah mengenal statement percabangan dalam Visual Basic?
Teori
Dalam membuat suatu program Visual Basic, operasi string dan tanggal memang tidak terlalu memegang peranan penting, tetapi hal ini tidak membuat pengenalan atau bahkan penguasaan operasi string dan tanggal menjadi tidak penting. Untuk beberapa kasus, pengerjaan akan lebih mudah dengan menggunakan operasi string dan tanggal. Pada pertemuan kali ini akan dibahas tentang operasi string yang diantaranya adalah left, right, mid, len, ucase, lcase, serta operasi tanggal yang diantaranya datediff, dateadd, format, date, now, day, month, year. Pembahasan akan meliputi penjelasan singkat mengenai fungsi operasi string dan tanggal, struktur penulisan serta contoh aplikasinya. Berikut adalah struktur penulisan untuk beberapa operasi string : Left Fungsi : Mengambil sejumlah karakter dari sisi kiri sebuah string Penulisan : Left(string_characters,jumlah_char) Right Fungsi : Mengambil sejumlah karakter dari sisi kanan sebuah string Penulisan : Right(string_characters,jumlah_char) Mid Fungsi : Mengambil karakter sebuah string dari posisi tertentu dan jumlah tertentu pula Penulisan : Mid(string_characters, start_char, jumlah_char) Len Fungsi : Menghitung jumlah karakter dari sebuah string Penulisan : Len(characters) UCase
19
: Merubah string alfabet menjadi huruf kapital : UCase(characters) : Merubah string alfabet menjadi huruf kecil : LCase(characters)
Berikut adalah struktur penulisan untuk beberapa operasi tanggal : DateDiff Fungsi : Mengetahui selisih antara 2 tanggal Penulisan : Return_value = DateDiff(interval_string,Date1,Date2) Terdapat beberapa interval string yang digunakan dalam fungsi DateDiff:
Interval string Keterangan
h d m n q s y w ww yyyy
: : : : : : : : : :
Hour Day Month Minute Quarter Second Day of year Weekday Week year
DateAdd Fungsi : Menambahkan tanggal dengan sejumlah hari,tahun,dsb. Penulisan : Return_value=DateAdd(Interval_string,Number,Date) Format Fungsi : Mengatur susunan atau format angka seperti tanggal, desimal, dsb. Penulisan : Return_value = Format(Return_value,[format yang diinginkan]) Date Fungsi : Mengetahui tanggal sekarang Penulisan : Return_value = Date Now Fungsi : Mengetahui tanggal dan jam sekarang Penulisan : Return_value = Now Day Fungsi : Mengetahui hari dari tanggal yang ditentukan dalam bentuk numerik antara 1-31 Penulisan : Return_value=Day(Date) Month Fungsi : Mengetahui bulan dari tanggal yang ditentukan dalam bentuk numerik antara 1-12 Penulisan : Return_value=Month(Date) Year Fungsi : Mengetahui tahun dari tanggal yang ditentukan Penulisan : Return_value=Year(Date)
20
Percobaan
1. Buat sebuah Project Standard Exe baru. 2. Masukkan beberapa komponen kedalam form yang ada, sehingga form akan berbentuk seperti gambar 1.1
Gambar 1.1 3. Rubah properti untuk masing-masing komponen sesuai tabel berikut : Komponen Form1 Label1 Label2 Text1 Text2 Command1 Command2 Properti Name Caption Name Caption Name Caption Name Text Name Text Name Caption Name Caption Isi frmNRP FORM NRP-KU lblNama Nama lblNRP NRP txtNama (kosong) txtNRP (kosong) cmdOk &Ok cmdExit E&xit
4. Klik dua kali pada Form. Untuk membuat program sederhana ini, kita membutuhkan beberapa variabel yang akan dideklarasikan pada bagian General yang terletak pada bagian paling atas Window Code. Kemudian tambahkan perintah pada bagian tersebut sebagai berikut :
Dim nrp As String Dim hasil As String Dim ps As String
5. Klik dua kali pada cmdExit. Ini merupakan cara cepat untuk mendapatkan event Click. Kemudian ketik perintah sebagai berikut :
21
Perintah diatas akan mengakhiri program. Ini adalah alternatif perintah mengakhiri program selain mengetikkan End. Coba jalankan dengan menekan F5 dan lihat apakah program berakhir ketika anda klik tombol (command button) Exit 6. Kembali ke form, klik dua kali pada cmdOk. Kemudian tuliskan perintah sebagai berikut :
Private Sub cmdOK_Click() hasil = "Halo " + UCase(txtNama.Text) + ", kalau tidak salah anda adalah :" + vbCr nrp = Left(txtNRP.Text, 2) hasil = hasil + "Mahasiswa angkatan " + nrp + vbCr nrp = Mid(txtNRP.Text, 3, 1) If nrp = 1 Then ps = "S1" ElseIf nrp = 3 Then ps = "D3" Else ps = "anda tidak jelas" End If hasil = hasil + "Program studi " + ps + vbCr nrp = Right(txtNRP.Text, 5) hasil = hasil + "Dan anda adalah mahasiswa ke " + nrp + " di STIKI" + vbCr hasil = hasil + "Benar kan?" MsgBox hasil, vbOKOnly+vbInformation, ":: Message NRP ::" End Sub
Variabel hasil menampung string Halo , nama yang diinputkan pada txtNama dan string , kalau tidak.... Fungsi vbCr sama dengan enter, yaitu membuat baris baru. Pada baris perintah berikut :
... nrp = Left(txtNRP.Text, 2) hasil = hasil + "Mahasiswa angkatan " + nrp + vbCr ...
Fungsi Left diatas mengambil 2 karakter dari kiri NRP yang diinputkan pada txtNRP. 2 karakter tersebut ditampung pada variabel nrp. Sekarang variabel hasil selain menyimpan string dari baris perintah pertama, kini juga menyimpan string Mahasiswa..., isi variabel nrp dan vbCr. Pada baris perintah berikut:
22
... nrp = Mid(txtNRP.Text, 3, 1) If nrp = "1" Then ps = "S1" ElseIf nrp = "3" Then ps = "D3" Else ps = "anda tidak jelas" End If hasil = hasil + "Program studi " + ps + vbCr ...
Fungsi Mid diatas mengambil karakter NRP yang diinputkan ke-3 dari kiri sebanyak 1 karakter, dan disimpan di variabel nrp. Jika isi variabel nrp adalah 1, maka variabel ps akan menyimpan S1, jika isi variabel nrp adalah 3, maka variabel ps menyimpan D3, dan jika tidak keduaduanya, variabel ps menyimpan anda.... Isi variabel hasil akan ditambahkan dengan string Program..., isi variabel ps dan vbCr. Pada baris perintah berikut:
... hasil = hasil + "Benar kan?" MsgBox hasil, vbOKOnly+vbInformation, ":: Message NRP ::" End Sub
Isi variabel hasil akan ditambahkan dengan string Benar kan?. String tersebut akan terletak pada baris terakhir. Seluruh isi variabel hasil akan ditampilkan dalam Message Box. Perintah vbOKOnly+vbInformation adalah agar terdapat tombol OK saja dan terdapat icon Information pada Message Box. Perintah :: Message NRP :: adalah untuk memberi title pada Message Box.
Latihan
1. Buat project Standard Exe baru. Tambahkan komponen yang diperlukan sehingga tampak seperti gambar 1.2 dibawah. Pada gambar tersebut hanya terdapat 2 TextBox dan 2 CommandButton. Sisanya adalah label. Untuk membuat label tampak 3 dimensi, ubah properti BorderStyle menjadi 1FixedSingle.
23
Gambar 1.2 Jalannya program untuk form diatas adalah sebagai berikut: a. Inputkan tanggal lahir dan tanggal sekarang pada TextBox. Ketika button Tampilkan di-klik, maka usia akan muncul di seluruh label 3D yang kosong. b. Ketika button Kosongi di-klik maka seluruh label 3D dan TextBox akan kosong seperti gambar 1.2, dan kursor berada di TextBox tanggal lahir.
Laporan
1. Pada frmNRP, tambahkan coding (tanpa merubah properties), agar txtNama hanya bisa disi huruf dan txtNRP hanya bisa diisi angka. Input untuk txtNama maksimal 20 karakter dan txtNRP maksimal 8 karakter. 2. Tambahkan coding (tanpa merubah properties), agar ketika pertama kali dijalankan frmNRP tampil tepat berada di tengah monitor dan hanya memiliki button close, tanpa button minimize dan restore di pojok kanan atas. 3. Untuk mem-format susunan angka, diantaranya terdapat 0 (nol) dan #. Sebutkan perbedaan keduanya. 4. Tuliskan beberapa sintaks format untuk tanggal dan jam. 5. Buatlah summary untuk percobaan dan latihan yang telah dilakukan. 6. Buat kesimpulan untuk praktikum kali ini.
24
MODUL V
Tujuan : Agar mahasiswa dapat : 1. menggunakan MsFlexGrid 2. menggunakan method additem,removeitem,clear 3. property textarray, textmatrix,cols,rows,col,row Persiapan : Menjalankan program Visual Basic, mengikuti Percobaan yang diberikan sesuai dengan urutannya. Mengerjakan Latihan-latihan yang diberikan. Pekerjaan : Membuat sebuah Form, menambahkan control (Microsoft Hierarchical Flex Grid Control 6.0), merubah property, dan mengetikkan sedikit program Hasil : Sebuah program sederhana, yang menggunakan msFlexgrid untuk menampilkan data.
Pre Test
1. Apakah saudara tahu cara menambahkan Control tambahan pada toolbar 2. Apakah saudara tahu tentang component Grid (DataGrid,FlexGrid) 3. Apakah saudara tahu cara memasukkan data kedalam Grid
Teori
Control
Seperti yang telah dijelaskan pada modul sebelumnya, bahwa Visual Basic menyediakan control untuk membuat object di form. Control yang terdapat pada toolbox dapat ditambahkan isinya, dengan beberapa control lain. Untuk menambahkan control dapat dilakukan dengan salah satu cara berikut : memilih menu Projectcomponent menekan tombol Ctrl+T klik kanan pada toolbox, pilih component pada popup menu
GRID
Grid adalah suatu control yang berbentuk table, memiliki kolom dan baris. Pada praktikum ini akan digunakan control Microsoft Flex Grid Control atau Microsoft Hierarchical Flex Grid.
MSFlexGrid Control
Sebelum dapat menggunakan control MSFlexGrid, maka harus ditambahkan component MSFlxGrd.ocx. Beberapa method yang ada pada MSFlexGrid sebagai berikut : AddItem : digunakan untuk menambah sebaris data Clear : menghapus semua data pada MSFlexGrid RemoveItem : menghapus satu baris data Property yang dapat disediakan :
25
Cols Rows FixedCols Fixed Rows Col Row Text TextArray TextMatrix
: Jumlah Kolom : Jumlah Baris : Jumlah Kolom yang tak dapat bergerak : Jumlah Baris yang tak dapat bergerak : Posisi Kolom Aktif : Posisi Baris Aktif : Tulisan pada posisi kolom dan baris aktif : Tulisan pada index dari Sel : Tulisan pada kolom dan baris tertentu secara langsung
Percobaan
1. Manambah Component MSFlexGrid Tekan Ctrl+T, pilih Microsoft FlexGrid Control 6.0, kemudian tekan Ok
26
Beri nama MsFlexGrid tersebut dengan "grdData" (tanpa tanda petik) 3. Menggunakan Cols, Rows, FixedCols, dan FixedRows untuk mengatur Grid Untuk latihan nomer 3 dan seterusnya, tuliskan perintah pada event Form_Load , secara berurutan.
grdData.FixedRows = 1 grdData.FixedCols = 1 grdData.Rows = 1 grdData.Cols = 4
5. Menggunakan Col, Row, dan Text untuk menulis pada cell di Grid
grdData.Row = 0 grdData.Col = 0 grdData.Text = "No" grdData.Col = 1 grdData.Text = "NRP" grdData.Col = 2 grdData.Text = "Nama" grdData.Col = 3 grdData.Text = "Tgl Lahir"
27
4 = = = =
9. Menghapus data menggunakan RemoveItem Untuk menghapus data pada posisi baris aktif gunakan perintah berikut :
grdData.RemoveItem grdData.row
Latihan
1. Buat program untuk menambah data pada MsFlexGrid, dengan tampilan program sebagai berikut :
2. Tambahkan pula fasilitas hapus data. Sewaktu baris pada flexGrid dipilih maka data yang terpilih akan tampil pada Textbox yang bersesuaian.
Laporan
1. Buat rangkuman untuk praktikum hari ini. 2. Tuliskan cara membuat modul pada Project
28
MODUL VI
Tujuan : Agar mahasiswa dapat menggunakan : 1. Menggunakan module 2. Menggunakan ADODB (menambahkan referens) 3. Menggunakan method openconnection,openrecordset 4. Membuat entry data dan laporan sederhana Persiapan : Menjalankan program Visual Basic, mengikuti Percobaan yang diberikan sesuai dengan urutannya. Mengerjakan Latihan-latihan yang diberikan. Pekerjaan : Membuat sebuah Form dan module, merubah property, dan mengetikkan sedikit program Hasil : Sebuah program sederhana, untuk mengkoneksikan database dengan Visual Basic module
Pre Test
1. Apakah saudara telah mengenal Visual Basic module 2. Apakah saudara pernah menggunakan ADODB 3. Apakah saudara mengoneksi database dengan method OpenConnection, openrecordset 4. Apakah saudara pernah membuat entry data dan laporan sederhana
Teori
Module pada Visual Basic
Visual Basic menyediakan module yang dapat digunakan untuk memuat fungsi, subrutin, konstanta, variabel dan ciptaan yang akan disediakan bagi seluruh project.
29
Mengenal Procedure
Procedure digunakan untuk memadatkan tugas-tugas berulang ataupun proses yang digunakan bersama, seperti perhitungan yang sering dilakukan, text dan manipulasi kontrol, serta operasi database. Ada beberapa jenis procedure yang digunakan dalam Visual Basic 1. Sub Procedure yang tidak mengembalikan nilai 2. Function Procedure yang mengembalikan nilai 3. Property Procedure yang dapat mengembalikan nilai dan diisi nilai yang mengacu pada suatu objek.
Sub Procedure
Syntax penulisan Sub Procedure [Private|Public][Static] Sub nama_procedure(argumen) Pernyataan-pernyataan End Sub Setiap kali procedure dipanggil, maka pernyataan-pernyataan yang berada di antara Sub dan End Sub akan dijalankan. Argumen pada procedure adalah nilai yang akan dilewatkan saat pemanggilan procedure. Contoh :
Sub Tengah(x) x.Top = (Screen.Height x.height) / 2 x.Left = (Screen.Width x.Width) / 2 End Sub Private Sub Form_Load() Call Tengah(Me) End Sub
30
Function Procedure
Pada Visual Basic telah tersedia berbagai fungsi bawaan seperti Sqr, Cos, dan Chr, tetapi fungsi-fungsi yang tersedia tersebut bersifat umum dan kadang-kadang tidak memenuhi kebutuhan programmer, untuk keperluan tersebut anda dapat menciptakan fungsi-fungsi sendiri yang dikenal dengan Function Procedure. Syntax penulisan Function Procedure [Private|Public][Static] Function nama_procedure(argumen) [As type] Pernyataan-pernyataan End Function Ada tiga perbedaan antara function dan procedure 1. Umumnya anda dapat memanggil suatu function dengan mengikut nama function sisi kanan dari statement atau ekspresi. 2. Function memiliki type data seperti suatu variabel. Ini menentukan type yang dari nilai yang di kembalikan 3. Nilai kembali dimasukkan ke nama function itu sendirinya, dan suatu function dapat menjadi bagian dari suatu ekspresi yang panjang. Contoh :
Function Bulan(x as Date) as string Dim bln as string Select Case Month(x) Case 1: bln = "Januari" Case 2: bln = "Februari" Case 3: bln = "Maret" Case 4: bln = "April" Case 5: bln = "Mei" Case 6: bln = "Juni" Case 7: bln = "Juli" Case 8: bln = "Agustus" Case 9: bln = "September" Case 11: bln = "Nopember" Case 12: bln = "Desember" End Select Bulan = bln End Function
Database
Suatu database merupakan koleksi dari informasi yang berhubungan dengan subyek atau fungsi tertentu, seperti menangani nilai-nilai ujian mahasiswa. Jika database anda tidak tersimpan pada komputer, maka anda harus menangani informasi tersebut dari berbagai sumber (berkas) dan mengkoordinir serta mengorganisasinya sendiri.
31
Dengan menggunakan suatu Sistem Manajemen Database (DBMS) anda dapat menempatkan database anda dalam suatu file, dan mengorganisasikannya menjadi table-tabel, dan mengkoordinir data tersebut menjadi laporan dengan berbagai fasilitas seperti Form, Query, Report.
Mengenal ADO
DAO merupakan suatu Object Data Access Yang berukuran besar meliputi kemampuan Data Definition, Data Manipulation dan Database Maintenance, sedangkan pada ADO, masing-masing fungsi tersebut dipisah menjadi objek tersendiri yaitu ADOX, ADO, dan JRO.
Mengenal ADODB
ADODB merupakan data control yang disediakan Visual Basic 6.0 untuk menggantikan data control yang berbasis DAO. Salah satu keunggulan ADODB adalah kemampuan mengakses database Access 2000 keatas (dengan menggunakan Microsoft.Jet.OLEDB.4.0), ADODB merupakan suatu jembatan antara user interface anda dengan OLEDB. OLEDB merupakan suatu himpunan dari Component Objek Model (COM) yang menyediakan akses secara seragam ke berbagai data yang disimpan dalam format yang berbeda.
Percobaan
1. Buat sebuah project Standard Exe baru 2. Untuk membuat module dalam project anda dapat menggunakan perintah Project, Add Module.
Sesaat setelah anda menambahkan module, maka Jendela Project Explorer akan nampak Module1
32
Untuk melakukan koding, anda dapat melakukan double klik pada module tersebut
3. Untuk mengoneksikan database dengan ADODB anda harus mereferensi kan dengan cara klik Project, References.
4. Membuat database dengan Access, diberi nama data.mdb. kemudian masukan database tersebut didalam folder project Visual Basic anda.
33
34
Dengan ketentuan : Field Name Data Type nrp(PK) Text(8) Nama Text(20) Alamat Text(20) Tabel tersebut diberi nama tmahasiswa dan keluar dari program Access 5. Kembali kedalam Visual Basic, kemudian mengoneksikan database yang baru dibuat dengan Visual Basic dengan menggunakan ADODB. Double klik pada Module1 , dan ketikan koding tersebut pada module1
Option Public Public Public Explicit Cn As New ADODB.Connection Rs As New ADODB.Recordset Const Dbasefile = "data.mdb"
Public Sub buka() If Cn.State = adStateOpen Then Cn.Close Cn.Mode = adModeReadWrite Cn.Open "Provider=Microsoft.jet.OLEDB.4.0;Data Source="+ _ App.Path + "\" + Dbasefile End Sub Public Sub eksekusiSQL(SQLstr As String) Cn.Execute SQLstr End Sub Public Sub OpenRecordset(SQLstr As String) If Rs.State = adStateOpen Then Rs.Close Rs.Open SQLstr, Cn, adOpenKeyset, adLockOptimistic, adCmdText End Sub
35
Public Sub tutup() If Rs.State = adStateOpen Then Rs.Close Set Rs.ActiveConnection = Nothing Set Rs = Nothing If Cn.State = adStateOpen Then Cn.Close Set Cn = Nothing End Sub
7. Membuka database, double klik pada form (masuk pada event Form_load())
Private Sub Form_Load() buka 'Diambil dari procedure yang ada di module End Sub
36
10. Double klik pada cmdhapus untuk mengisi koding hapus data
Private Sub cmdhapus_Click() eksekusiSQL "Delete from tmahasiswa " & _ " where nrp = '" & txtnrp.Text & "';" End Sub
11. Double klik pada cmdedit untuk mengisi koding edit data
Private Sub cmdedit_Click() eksekusiSQL "Update tmahasiswa " & _ " set nama = '" & txtnama.Text & "', " & _ " alamat = '" & txtalamat.Text & "'" & _ " where nrp = '" & txtnrp.Text & "';" End Sub
12. Double klik pada cmdlaporan untuk mengisi koding laporan data
Private Sub cmdlaporan_Click() Form2.Show End Sub
Dengan cara : Tambahkan komponen dengan cara tekan Ctrl+T kemudian pilih Microsoft Windows Common Controls 6.0 (SP6). Pilih Listview di bagian Menu toolbox. 14. Kemudian tambahkan koding di Form2 dibagian event Load.
37
Private Sub Form_Load() Dim ch As ColumnHeader, lv As ListItem ListView1.View = lvwReport Set ch = ListView1.ColumnHeaders.Add(, , "NRP", 1300) Set ch = ListView1.ColumnHeaders.Add(, , "Nama", 2000) Set ch = ListView1.ColumnHeaders.Add(, , "Alamat", 2000) ListView1.GridLines = True ListView1.Enabled = True OpenRecordset "Select * from tmahasiswa;" If Not Rs.EOF Then Do Until Rs.EOF Set LV = ListView1.ListItems.Add(, , Rs.Fields!nrp) LV.SubItems(1) = Rs.Fields!nama LV.SubItems(2) = Rs.Fields!alamat Rs.MoveNext Loop End If End Sub
Latihan
1. Tambahkan field di database dan program anda : a. Tempat/Tanggal Lahir b. Kota c. No Telp 2. Sempurnakan program yang sudah ada tersebut, seperti mengosongkan isi form (Clear Form).
Laporan
1. Tuliskan kegunaan dari adodb 2. Cari di internet tentang connection string pada ado, dan buatkan connection stringnya untuk bisa menghubungkan database dengan mysql (yang telah menggunakan myodbc). 3. Buat koneksi diatas dengan menggunakan ADODC. 4. Buatlah summary untuk percobaan dan latihan yang telah dilakukan. 5. Buat kesimpulan untuk praktikum kali ini.
38
MODUL VII
Tujuan : Agar mahasiswa dapat menggunakan : 1. Menggunakan MDIForm 2. Membuat menu 3. Membuat laporan Persiapan : Menjalankan program Visual Basic, mengikuti Percobaan yang diberikan sesuai dengan urutannya. Mengerjakan Latihan-latihan yang diberikan. Pekerjaan : Membuat sebuah MDIForm dan menu, membuat laporan dengan data environment, dan mengetikkan sedikit program Hasil : Sebuah program sederhana, dengan menggunakan MDIForm
Pre Test
1. Apakah saudara telah mengenal Visual Basic MDIForm 2. Apakah saudara pernah menggunakan menu 3. Apakah menggabungkan program-program anda dengan menggunakan MDIForm dan menu
Teori
MDIForm
Pada Visual Basic, anda dapat mengembangkan aplikasi dengan interface sebagai berikut : SDI (Single Document Interface) MDI (Multiple Document Interface) Pada aplikasi SDI, setiap form merupakan form-form yang berdiri sendiri, Aplikasi SDI pada windows terdapat pada aplikasi seperti Notepad, WordPad dan Paint. Sedangkan aplikasi seperti Microsoft Word menggunakan MDI, yaitu terdiri dari suatu MDIForm, dan didalamnya merupakan form-form anak (MDIchild). Ada beberapa hal yang harus diperhatikan dalam penggunaan MDIForm adalah : Didalam satu project hanya dapat terdiri dari satu MDIForm Anda tidak dapat menempatkan kontrol-kontrol secara langsung pada MDIForm, kecuali kontrol yang memiliki properti Alignment, atau menempatkannya diatas kontainer seperti Picturebox. Anda tidak dapat menggunakan metode pengambaran (Print, Line, Circle, dan PSet) seperti pada form umumnya.
39
Percobaan
1. Buka program modul VI. 2. Membuat suatu MDI form Dari menu Insert, Pilih Add MDI Form. (Suatu aplikasi hanya dapat terdiri dari satu MDI form)
3. Membuat suatu Form menjadi MDI Child Dari properti Form tersebut, ubah nilai properti MDI Child-nya menjadi True.
4. Menentukan StartUp Objek Pada Menu Tools, pilih Command Options, pilih Tab Project, Tentukan StartUp Object ke MDI form yang telah ditambahkan.
Karakteristik dari MDI Form : a. Semua child form tidak dapat dipindahkan keluar dari MDI Form. b. Ketika suatu child form diminimize, akan menjadi icon dibawah MDI Form. c. Anda dapat menentukan apakah child form secara otomatis ditampilkan atau tidak dengan menggunakan properti AutoShowChildren pada MDIForm. d. Jika pada child form ada menu, maka menu akan ditampilkan pada MDIform menu. Pada MDIform anda tidak dapat menempatkan kontrol-kontrol visible yang tidak mendukung alignment, kecuali kalau anda menempatkannya kedalam suatu kontainer seperti Picturebox, dan Toolbar. Sedangkan kontrol non-visible seperti Timer dan CommonDialog box dapat ditempatkan diatas MDIForm. 5. Pembuatan menu pada Visual Basic dapat dilakukan dengan bantuan Menu Editor yang terdapat pada Menu Tools .
40
Pada dasarnya setiap item menu memiliki Caption dan sebuah Nama. Anda dapat membentuk Kunci Akses dengan menggunakan tanda & (ampersand) pada Caption dari menu tersebut. Untuk membuat menu anda cukup mengetikan Caption dan Name, selanjutnya klik pada Next, dan ketikkan menu yang berikutnya, sampai selesai. Selanjutnya adalah menbuat Sub Menu dengan melakukan klik pada panah kanan dan sebaliknya. Anda dapat membuat sampai 5 Sub Menu (6 kalau termasuk Menu Utama). 6. Pada contoh diatas akan menghasilkan menu sebagai berikut :
7. Anda dapat menggunakan tanda - (karakter hypen) untuk membuat garis pemisah antar menu pada Caption.
41
8. Pada Visual Basic, anda dapat membuat menu pop up dengan memanfaatkan menu Editor untuk mendefinisikan nama kelompok menu Pop Up beserta Sub Menunya, dan menonaktifkan option Visible dari kelompok menu tersebut.
42
Sehingga kalau dilakukan klik kanan pada form akan menanpilkan suatu Pop Up menu yang berupa Sub Menu dari mnuAtur.
43
10. Membuat Data Report dengan Data Environtment. Tambahkan Data Report dan Data Environtment didalam menu Project.
44
11. Kemudian koneksi kan Data Environtment pada data yang telah dibuat pada modul VI, dengan cara klik kanan pada Connection1 , pilih properties, pilih Microsoft Jet 4.0 OLE DB Provider, tekan tombol Next, kemudian browse databasenya yang di pilih. Kemudian tekan tombol Ok. 12. Klik kanan pada Connetion1, kemudian pilih add Command. Klik kanan pada Command1, kemudian pada Database Object pilih Table, dan Object Name pilih table yang telah dibuat. Misalnya tmahasiswa. Kemudian tekan tombol Ok. Didalam Command1 akan muncul fieldnya yang akan di export kedalam Data Report.
45
13. Drag dan Drop Command1 ke dalam DataReport1 di bagian Detail atau Section1. dan akan tampak hasil seperti ini
Dan rubah DataSource = DataEnvirontment1 dan DataMember = Command1 didalam properties DataReport1.
46
Latihan
1. Sempurnakan program diatas, dengan menambahkan menu untuk membuka laporan Data Report. 2. Susunlah dengan rapi untuk mendesain DataReport.
Laporan
1. Tuliskan kegunaan dari Data Environtment dan Data Report. 2. Carilah di internet bagaimana menggunakan Data Environtment dan Data Report dengan cara koding. 3. Buatlah summary untuk percobaan dan latihan yang telah dilakukan. 4. Buat kesimpulan untuk praktikum kali ini.
47