pemrograman vba-pada-microsoft-access-2007

29
91 Form dan Kontrol Pada bab-bab sebelumnya kita telah sering menggunakan form maupun kontrol. Kita menggunakan form sebagai cara untuk berinteraksi dengan pengguna/user. Dengan form, kita bisa men- ciptakan berbagai macam aplikasi. Pada form kita dapat menam- bahkan kontrol-kontrol, seperti text box, command button, check box, option button, dan sebagainya untuk melengkapi aplikasi yang akan kita buat. Untuk mengatur fungsi-fungsi yang akan dijalankan oleh masing- masing kontrol, kita menggunakan kode program pada VBA. Dalam kode program inilah kita menggunakan variabel, konstanta, operator, fungsi, prosedur, percabangan, perulangan, dan seba- gainya yang telah dijelaskan pada bab-bab sebelumnya. 5.1 Form Pada bagian ini kita akan mempelajari lebih dalam tentang form, dimulai dari pengenalan form sebagai objek beserta atribut- atributnya, cara membuat form serta menciptakan aplikasi- aplikasi dengan form.

Upload: zona-computer

Post on 22-Jul-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

91

Form dan Kontrol

Pada bab-bab sebelumnya kita telah sering menggunakan form maupun kontrol. Kita menggunakan form sebagai cara untuk berinteraksi dengan pengguna/user. Dengan form, kita bisa men-ciptakan berbagai macam aplikasi. Pada form kita dapat menam-bahkan kontrol-kontrol, seperti text box, command button, check box, option button, dan sebagainya untuk melengkapi aplikasi yang akan kita buat.

Untuk mengatur fungsi-fungsi yang akan dijalankan oleh masing-masing kontrol, kita menggunakan kode program pada VBA. Dalam kode program inilah kita menggunakan variabel, konstanta, operator, fungsi, prosedur, percabangan, perulangan, dan seba-gainya yang telah dijelaskan pada bab-bab sebelumnya.

5.1 Form Pada bagian ini kita akan mempelajari lebih dalam tentang form, dimulai dari pengenalan form sebagai objek beserta atribut-atributnya, cara membuat form serta menciptakan aplikasi-aplikasi dengan form.

92

5.1.1 Objek Form

Seperti yang telah kita ketahui pada bab sebelumnya, form juga merupakan sebuah objek. Setiap objek memiliki properties, methods, serta events. Berikut ini daftar dari properties, methods, dan events yang biasanya digunakan dalam form.

Properti-properti yang biasa digunakan dalam form:

Nama Property Deskripsi

Caption Mengatur atau mengambil judul/teks pada bagian atas form.

FitToScreen Untuk mengatur agar ukuran form sesuai dengan layar.

Visible Mengatur apakah form tersebut dapat dilihat (visible = true) atau tidak dapat dilihat (visible = false).

Width Mengatur lebar form.

Method-method yang biasa digunakan dalam form:

Nama Methods Deskripsi

Refresh Meng-update isi form apabila terjadi peru-bahan.

Set Focus Mengatur fokus agar berada pada form yang dimaksud.

Event-event yang biasa digunakan dalam form:

Nama Event Deskripsi

Activate Event ini terjadi saat form menjadi form yang aktif (saat mendapat fokus).

Click Event ini terjadi saat user mengklik form.

Close Terjadi saat form ditutup dan dipindahkan dari layar.

93

GotFocus Terjadi saat form mendapat fokus.

KeyPress Terjadi saat user menekan tombol pada keyboard dan melepasnya.

KeyDown Terjadi saat user menekan tombol pada keyboard.

KeyUp Terjadi saat user menekan tombol pada keyboard dan melepasnya.

Load Terjadi saat form dipanggil/dibuka.

LostFocus Terjadi saat fokus tidak lagi berada pada form.

Mouse Down Terjadi pada saat user mengklik tombol mouse.

Mouse Up Terjadi pada saat user mengklik tombol mouse dan melepasnya.

Resize Terjadi apabila saat form terbuka dan ukuran-nya berubah.

Unload Terjadi saat form ditutup.

5.2 Kontrol-Kontrol yang Sering Digunakan dalam Form

Kita telah mengetahui sekilas tentang beberapa kontrol yang sering digunakan dalam form lewat contoh-contoh sebelumnya. Kontrol-kontrol yang sudah pernah kita gunakan sebelumnya dalam buku ini hanya merupakan sebagian kecil dari keseluruhan kontrol yang tersedia. Sekarang kita akan mengenal lebih jauh mengenai kontrol-kontrol yang tersedia untuk mendesain form.

5.2.1 Label

Label berguna untuk menampilkan teks yang tidak dapat diubah pada saat program berjalan. Pada umumnya label bermanfaat untuk memberikan nama pada suatu kontrol, oleh karena itu label

94

biasanya terhubung dengan kontrol lain. Kontrol-kontrol yang biasanya terhubung dengan label, antara lain text box dan list box. Namun, kita juga dapat menggunakan label secara independen tanpa menghubungkannya dengan kontrol lain.

Label secara otomatis akan terbentuk jika kita menggunakan kontrol yang membutuhkan label sebagai penamaannya, misalnya text box dan list box. Kita juga dapat menggunakan label secara individu dengan cara klik tombol Label pada bagian form design.

Berikut ini tampilan tombol Label.

Gambar 5.1. Tampilan Tombol Label pada Ribbon

Setelah mengklik tombol label, letakkan kontrol label tersebut dalam form. Drag sesuai kebutuhan (ukurannya dapat disesuaikan kemudian).

Berikut ini contoh label yang berdiri sendiri yang menjelaskan judul sebuah form, yaitu “Data Customer”.

Gambar 5.2. Tampilan Label Independen

95

Sekarang kita akan melihat contoh label yang terhubung dengan kontrol text box. Klik tombol text box pada bagian design form. Setelah itu, drag area yang diinginkan pada form. Kita akan menemukan dua buah control terbentuk pada form, yaitu text box itu sendiri dan sebuah label. Label ini berfungsi untuk menjelaskan isi text box tersebut nantinya. Contohnya, label “Nama” menje-laskan bahwa text box tersebut menyimpan nama.

Gambar 5.3. Tampilan Label yang Terhubung dengan Text Box

5.2.2 Text Box

Text Box merupakan kontrol yang berfungsi untuk menampung teks yang diinputkan oleh user. Berikut ini tampilan letak tombol textbox pada ribbon.

Gambar 5.4. Tampilan Letak Tombol Text Box pada Ribbon

96

Untuk lebih memahami tentang text box, mari kita lihat contoh penggunaannya berikut ini.

1. Buatlah sebuah form baru. Untuk membuat form kosong, klik tab Create kemudian klik tombol Form Design.

2. Tambahkan tiga buah textbox ke dalamnya.

3. Atur properti kontrol-kontrol tadi menjadi seperti berikut ini.

Objek Properti Setting

Label Caption Nama

Text Align Right

Text Box Name Txt1

Label Caption Nama 2

Text Align Right

Text Box Name Txt2

Label Caption Nama 3

Text Align Right

Text Box Name Txt3

4. Tampilan desain form adalah seperti berikut.

97

Gambar 5.5. Tampilan Desain Form Contoh Text Box

5. Pada Visual Basic Editor tuliskan kode program berikut ini.

Private Sub txt1_GotFocus() txt1 = tampung tampung = txt1.Value MsgBox tampung txt2 = "" txt3 = "" End Sub Private Sub txt2_GotFocus() MsgBox tampung txt2 = tampung txt1 = "" txt3 = "" End Sub Private Sub txt3_GotFocus() MsgBox tampung txt3 = tampung txt1 = "" txt2 = "" End Sub

98

6. Perintah di atas berfungsi untuk memindahkan isi text box txt1 ke text box lain yang kita klik. Cara kerjanya adalah pada saat text box txt2 mendapatkan focus, maka isi txt1 akan ter-copy ke dalam txt2 kemudian isi txt1 dihapus, sehingga kesannya terlihat seperti isi txt1 berpindah ke txt2. Begitu juga halnya apabila kita mengklik txt3, akan terlihat tulisan pada txt1 tadi akan berpindah ke txt3.

7. Misalnya, kita memasukkan kata ‘Helen’ pada txt1. Tampilan form hasil adalah seperti pada Gambar 5.6.

8. Setelah itu, tekan tombol Tab pada keyboard (beri focus pada txt2), hasilnya akan terlihat seperti pada Gambar 5.7.

Gambar 5.6. Tampilan Form Hasil Saat User Menginputkan ‘Helen’

pada txt1

99

Gambar 5.7. Tampilan Form Hasil saat txt1 Kehilangan Focus

9. Apabila kita menekan tombol Tab sekali lagi, isi txt2 akan berpindah ke txt3. Hasilnya dapat dilihat pada gambar berikut.

Gambar 5.8. Tampilan Form Hasil saat txt2 Kehilangan Fokus

5.2.3 Command Button

Command button digunakan untuk membuat tombol yang biasa-nya berisi perintah. Berikut tampilan letak tombol command button pada ribbon.

100

Gambar 5.9. Tampilan Letak Tombol Command Button pada Ribbon

Untuk lebih memahami tentang command button, mari kita lihat contoh penggunaannya berikut ini.

1. Buatlah sebuah form baru. Tambahkan satu buah textbox dan satu buah command button ke dalamnya.

2. Atur properti kontrol-kontrol tadi menjadi seperti berikut ini.

Objek Properti Setting

Label Caption Nama

Text Align Right

Text Box Name txtNama

Command Button Caption Say Hello

Alignment Center

Name cmdHello

3. Tampilan desain form adalah sebagai berikut.

101

Gambar 5.10. Tampilan Desain Form Contoh Command Button

4. Pada Visual Basic Editor tuliskan kode program berikut ini. Private Sub cmdHello_Click() MsgBox "Hello " & txtNama.Value End Sub

5. Perintah di atas akan menampilkan message box yang berisi “Hello” dan isi txtNama saat kita mengklik tombol Say Hello.

6. Misalnya kita memasukkan ‘Alicia’ pada txtNama. Tampilan form hasil adalah seperti pada Gambar 5.11.

Gambar 5.11. Tampilan Form Hasil sesudah Tombol Say Hello Diklik

102

5.2.4 List Box

List box merupakan kotak yang berisi daftar, misalnya daftar nama, daftar kota, atau daftar pilihan. Berikut tampilan letak list box pada ribbon.

Gambar 5.12. Tampilan Letak Tombol List Box pada Ribbon

Untuk lebih memahami tentang list box, mari kita lihat contoh penggunaannya berikut ini.

1. Buatlah sebuah form baru. Tambahkan satu buah list box, satu buah text box, dan satu buah command button ke dalamnya.

2. Atur properti kontrol-kontrol tadi menjadi seperti berikut ini.

Objek Properti Setting

Label Caption Menu yang dipilih

Text Align Right

Text Box Name txtMenu

Command Button Caption Pilih Menu

Alignment Center

Name cmdPilih

Label Caption Daftar Menu

Text Align Center

103

List Box Name lstMenu

Row Source NasiGoreng;Nasi Uduk;Ayam Goreng;Ayam Bakar;Kentang Goreng;Roti Bakar

3. Tampilan desain form adalah sebagai berikut.

Gambar 5.13. Tampilan Desain Form Contoh List Box

4. Pada Visual Basic Editor tuliskan kode program berikut ini. Private Sub cmdPilih_Click() txtMenu.Value = lstMenu.Value End Sub

5. Perintah di atas akan menampilkan menu yang kita pilih ke dalam txtMenu.

6. Misalnya, kita memilih menu ‘Kentang Goreng’. kemudian mengklik tombol Pilih Menu, maka kita dapat melihat bahwa dalam txtMenu saat ini telah terisi dengan nilai ‘Kentang Goreng’. Tampilan form hasil adalah seperti Gambar 5.14.

104

Gambar 5.14. Tampilan Form Hasil setelah Menu Dipilih dan Tombol

Pilih Menu Diklik

5.2.5 Combo Box

Combo box merupakan kombinasi antara list box dan text box. Kita dapat memilih satu atau lebih pilihan dari dalam combo box dan juga menambahkan item baru ke dalamnya. Tampilan letak combo box pada ribbon adalah sebagai berikut.

Gambar 5.15. Tampilan Letak Tombol Combo Box pada Ribbon

Untuk lebih memahami combo box, mari kita lihat contoh peng-gunaannya berikut ini.

1. Buatlah sebuah form baru. Tambahkan satu buah combo box, satu buah textbox, dan satu buah command button ke dalam-nya.

105

2. Atur properti kontrol-kontrol tadi menjadi seperti berikut ini.

Objek Properti Setting

Label Caption Nama Kota

Text Align Right

Text Box Name txtNamaKota

Command Button Caption Input Nama Kota

Alignment Center

Name cmdInput

Label Caption Daftar Kota

Text Align Right

Combo Box Name cmbNamaKota

3. Tampilan desain form adalah sebagai berikut.

Gambar 5.16. Tampilan Desain Form Contoh Combo Box

4. Pada Visual Basic Editor tuliskan kode program berikut ini.

106

Private Sub cmdInput_Click() cmbNamaKota.AddItem (txtNamaKota.Value) End Sub

5. Perintah di atas akan menambahkan daftar pada combo box cmbNamaKota berdasarkan isi dari kotak teks txtNamaKota saat kita mengklik tombol Input Nama Kota.

6. Misalnya, kita menginputkan nama kota ‘Surabaya’ pada ko-tak teks txtNamaKota, kemudian klik tombol Input Nama Kota, maka saat kita melihat isi combo box, di sana telah ter-dapat sebuah nama kota, yaitu ‘Surabaya’. Tampilan form ha-sil adalah seperti pada Gambar 5.17.

Gambar 5.17. Tampilan Form Hasil setelah Tombol Input Nama Kota

Diklik

7. Sekarang kita akan menginputkan nama kota ‘Manado’ dalam kotak teks txtNamaKota.

8. Klik tombol Input Nama Kota, kemudian lihat isi combo box. Tampilannya dapat dilihat pada Gambar 5.18.

107

Gambar 5.18. Tampilan Form Hasil saat Daftar Kota Bertambah

5.2.6 Option Button

Option button digunakan untuk item pilihan, di mana kita hanya dapat memilih satu dari sekian pilihan. Misalnya pilihan untuk jenis kelamin, kita hanya dapat memberi tanda pada option pria atau wanita. Option button harus diletakkan di dalam option group agar user benar-benar hanya bisa memilih satu dari sekian pilihan. Tampilan tombol option button dan option group dapat dilihat pada Gambar 5.19.

Gambar 5.19. Tampilan Letak Tombol Option Button dan Tombol

Option Group pada Ribbon

Berikut contoh penggunaan option button:

108

1. Buatlah sebuah form baru. Tambahkan satu buah label, satu buah command button, satu buah text box, dan satu buah op-tion group ke dalam form. Setelah itu, tambahkan dua buah option button ke dalam option group.

2. Atur properti kontrol-kontrol tadi menjadi seperti berikut ini.

Objek Properti Setting

Label Caption Jenis Kelamin

Text Align Right

Option Group Name Frame1

Option Button Name optPria

Label Caption Pria

Option Button Name optWanita

Label Caption Wanita

Command Button Name cmdPilih

Caption Pilih

Text Box Name txtJenisKelamin

3. Tampilan desain form adalah sebagai berikut.

Gambar 5.20. Tampilan Desain Form Contoh Option Button

109

4. Pada Visual Basic Editor tuliskan kode program berikut ini. Private Sub Form_Load() txtJenisKelamin.Value = "" End Sub Private Sub cmdPilih_Click() If Frame1.Value = 1 Then txtJenisKelamin.Value = "Pria" ElseIf Frame1.Value = 2 Then txtJenisKelamin.Value = "Wanita" Else txtJenisKelamin.Value = "" End If End Sub

5. Perintah di atas akan menampilkan isi option button yang kita pilih ke dalam txtJenisKelamin saat kita mengklik tombol Pilih.

6. Misalnya kita memilih option ‘Pria’, setelah itu mengklik tombol Pilih. Tampilan form hasil adalah seperti Gambar 5.21.

Gambar 5.21. Tampilan Form Hasil saat Tombol Pilih Diklik

7. Sekarang kita memilih option ‘Wanita’, setelah itu mengklik tombol Pilih. Tampilan form hasil adalah seperti Gambar 5.22.

110

Gambar 5.22. Tampilan Form Hasil saat Option Wanita Dipilih dan

Tombol Pilih Diklik

5.2.7 Check Box

Check box juga digunakan untuk item pilihan, namun kita dapat memilih lebih dari satu pilihan dari sekian banyak pilihan. Misal-nya, untuk pilihan hobi, kita dapat menandai pada pilihan mem-baca, jalan-jalan, dan mendengarkan musik secara bersamaan. Tampilan letak tombol check box pada ribbon dapat dilihat pada gambar berikut.

Gambar 5.23. Tampilan Letak Tombol Check Box pada Ribbon

Berikut contoh penggunaan check box.

1. Buatlah sebuah form baru. Tambahkan satu buah check box, satu buah listbox, dan satu buah command button ke dalam-nya.

2. Atur properti kontrol-kontrol tadi menjadi seperti berikut ini.

111

Objek Properti Setting

Label Caption Hobi

List Box Name lstHobi

Command Button Caption Tambah

Alignment Center

Name cmdTambah

Label Caption Hobi

Check Box Name chk1

Label Caption Baca Buku

Check Box Name chk1

Label Caption Dengar Musik

Check Box Name chk2

Label Caption Jalan-jalan

Check Box Name chk3

Label Caption Menjahit

Check Box Name chk4

Label Caption Memasak

Check Box Name chk5

Label Caption Utak Atik Komputer

Command Button Caption Hapus List

Alignment Center

Name cmdClear

3. Tampilan desain form adalah sebagai berikut.

112

Gambar 5.24. Tampilan Desain Form Contoh Check Box

4. Pada Visual Basic Editor tuliskan kode program berikut ini. Private Sub cmdClear_Click() Dim i As Integer For i = lstHobi.ListCount - 1 To 0 Step -1 lstHobi.RemoveItem (i) Next End Sub Private Sub cmdTambah_Click() If chk0.Value = -1 Then lstHobi.AddItem ("Baca Buku") End If If chk1.Value = -1 Then lstHobi.AddItem ("Dengar Musik") End If If chk2.Value = -1 Then lstHobi.AddItem ("Jalan-jalan") End If If chk3.Value = -1 Then lstHobi.AddItem ("Menjahit") End If If chk4.Value = -1 Then

113

lstHobi.AddItem ("Memasak") End If If chk5.Value = -1 Then lstHobi.AddItem ("Utak Atik Komputer") End If End Sub

5. Perintah di atas akan menambahkan hobi yang kita pilih pada check box yang sudah ada ke dalam lstHobi saat kita mengklik tombol Tambah.

6. Misalnya, kita memilih hobi ‘Baca Buku’, ‘Dengar Musik’ dan ‘Utak Atik Komputer’, setelah itu mengklik tombol Tambah. Tampilan form hasil adalah seperti pada Gambar 5.25.

Gambar 5.25. Tampilan Form Hasil saat Tombol Tambah Diklik

7. Sekarang klik tombol Hapus List. Isi lstHobi akan terhapus semua kembali dan tampilan form menjadi seperti berikut.

114

Gambar 5.26. Tampilan Form Hasil saat Tombol Hapus List Diklik

5.3 Membuat Aplikasi Sederhana dengan Form dan Kontrol

Pada bagian sebelumnya kita telah mempelajari tentang form dan kontrol yang dapat dibuat secara otomatis dari tabel atau query, serta mengenai kontrol-kontrol yang biasanya digunakan dalam aplikasi. Sekarang kita akan mempelajari cara membuat aplikasi sederhana yang menggabungkan form serta kontrol-kontrol yang sudah dijelaskan di atas.

Kita akan membuat aplikasi sederhana untuk membuat gambar segitiga dari tanda * dengan memanfaatkan kontrol listbox. Ikuti langkah-langkah berikut ini:

1. Buatlah sebuah form baru. Klik tombol Form Design pada tab Create. Lihat gambar berikut ini.

115

Gambar 5.27. Tombol Form Design pada Tab Create

2. Tambahkan satu buah text box, satu buah list box, dan tiga buah command button.

Objek Properti Setting

Label Caption Jumlah

Text Box Name txtJumlah

Command Button Name cmdKclBsr

Caption Segitiga Kiri Bawah

Command Button Name cmdBsrKcl

Caption Segitiga Kiri Atas

Command Button Name cmdHapus

Caption Hapus

3. Tampilan form yang kita buat adalah seperti Gambar 5.28.

116

Gambar 5.28. Tampilan Desain Form Aplikasi

4. Untuk kode programnya pada editor VBA adalah sebagai beri-kut. Option Compare Database Dim i As Integer Dim j As Integer Dim k As Integer Dim str As String Private Sub cmdBsrKcl_Click() str = "" For i = Val(txtJumlah) To 1 Step -1 For j = 1 To i str = str & "*" Next lstBintang.AddItem (str) str = "" Next End Sub Private Sub cmdHapus_Click() For i = lstBintang.ListCount - 1 To 0 Step -1 lstBintang.RemoveItem (i) Next End Sub

117

Private Sub cmdKclBsr_Click() For i = 1 To Val(txtJumlah) For j = 1 To i str = str & "*" Next lstBintang.AddItem (str) str = "" Next End Sub Private Sub cmdKclKcl_Click() For i = 1 To Val(txtJumlah) For j = 1 To (Val(txtJumlah) - i) str = str & "" Next j For k = 1 To i str = str & "*" Next k lstBintang.AddItem (str) str = "" Next i End Sub Private Sub Command6_Click() txtJumlah = lstBintang.Value End Sub Private Sub Form_Load() str = "" End Sub

5. Pada bentuk form view, masukkan jumlah baris yang akan membentuk segitiga pada kotak teks Jumlah.

6. Setelah itu klik tombol Segitiga Kiri Bawah untuk melihat ha-silnya. Lihat pada Gambar 5.29.

118

Gambar 5.29. Tampilan Form Hasil Setelah Tombol Segitiga Kiri

Bawah Diklik

7. Sekarang klik tombol Segitiga Kiri Atas. Tampilannya dapat dilihat pada Gambar 5.30.

Gambar 5.30. Tampilan Form Hasil setelah Tombol Segitiga Kiri Atas

Diklik

119

8. Untuk membersihkan list box, klik pada tombol Hapus. Berikut ini tampilannya.

Gambar 5.31. Tampilan Form Hasil setelah Tombol Hapus Diklik

---@@@---