Sabtu, 19 Oktober 2013

BERBAGAI MANIPULASI DALAM PEMROGRAMAN



BERBAGAI MANIPULASI DALAM PEMROGRAMAN


A. Aktif (hidup) dan Non Aktif (mati) Kontrol/Objek
Aktif (hidup) maksudnya adalah bahwa kontrol tersebut bisa digunakan (diisi, diklik, dan sebagainya). Sebaliknya Non Aktif (mati) maksudnya adalah bahwa kontrol tersebut tidak bisa digunakan.
Dalam membuat aplikasi tentu saja terkadang membutuhkan banyak kontrol, sesuai dengan program yang dibuat.  Pada saat tertentu terkadang kontrol tersebut perlu dimatikan (non aktif) atau dihidupkan (aktif). Pengaturan ini dapat dilakukan melalui properties. Namun kondisi yang dialami oleh objek tersebut akan bersifat tetap. Untuk lebih fleksibel, maka proses pengaturan dapat pula dilakukan dengan penulisan kode.

Bentuk Umum Perintah :

NamaObjek.Enabled=<kondisi>

NamaObjek       : adalah nama objek/kontrol yang akan diberikan pengaturan
Enabled            : adalah perintah untuk aktif/tidak aktif
<kondisi>          : adalah kondisi yang diberikan (True untuk aktif)
  atau (False untuk tidak aktif)

Contoh :
Misalkan pada form ada objek/kontrol TEXT1

Untuk mematikan kontrol tersebut maka kode yang harus ditulis adalah :
TEXT1.Enabled=False

Untuk menghidupkan kontrol tersebut maka kode yang harus ditulis adalah :
TEXT1.Enabled=True



B. Tampil (muncul) dan Tidak Tampil (hilang) Kontrol/Objek
Tampil (muncul) maksudnya adalah bahwa kontrol tersebut tampak pada interface. Sebaliknya Tidak Tampil (hilang) maksudnya adalah bahwa kontrol tersebut tidak tampak pada interface.
Untuk keperluan tertentu kondisi-kondisi ini sangat membantu untuk digunakan supaya program lebih interaktif.

Bentuk Umum Perintah :

NamaObjek.Visible=<kondisi>

NamaObjek       : adalah nama objek/kontrol yang akan diberikan pengaturan
Visible              : adalah perintah untuk tampil/tidak tampil
<kondisi>          : adalah kondisi yang diberikan (True untuk aktif)
  atau (False untuk tidak aktif)

Contoh :
Misalkan pada form ada objek/kontrol TEXT1

Untuk menghilangkan kontrol tersebut maka kode yang harus ditulis adalah :
TEXT1.Visible=False

Untuk menampilkan kontrol tersebut maka kode yang harus ditulis adalah :
TEXT1.Visible=True

C. Memesan Variabel Memori
Variabel adalah lokasi penyimpanan bernama yang menampung data yang berubah. Variabel itu seperti kotak di dalam memori yang menampung nilai data. Dengan variabel memori kita dapat menyimpan nilai data pada lokasi memori yang dapat dioperasikan.
Menetapkan variabel berarti membuat dan memberi nama variabel. Sebuah program dapat memiliki variabel sebanyak yang kita mau sesuai kebutuhan. Untuk menetapkan variabel dapat digunakan bentuk umum perintah sebagai berikut :

DIM VarName As DataType

VarName = Nama variabel
DataType = Jenis data

Bila As DataYpe tidak disertakan, maka secara otomatis dianggap jenis data variant (jenis data tergantung nilai awal yang diberikan)
Contoh :
Akan dipesan variabel dengan nama Komentar berjenis data karakter serta variabel dengan nama awal berjenis data angka, maka pemesanan variabel dapat ditulis sebagai berikut :

Dim Komentar As String
Dim Awal As Integer

Penempatan perintah pemesanan variabel tersebut bisa ditempatkan pada posisi General – (Declarations) atau bisa juga di awal prosedur yang bersangkutan.


D. Membuat Kotak Pesan
Kotak pesan dapat digunakan untuk menanyakan sesuatu kepada pengguna atau menampilkan pesan kesalahan dan memberi saran kepada pengguna.
Bentuk Umum Perintah :
-    Bentuk sederhana
Msgbox <Informasi/Komentar>
Contoh :
Msgbox “Data tidak ditemukan”
Hasilnya :






Gambar 28 : Contoh kotak pesan sederhana
-    Bentuk Lengkap
VarMem = Msgbox (<Informasi/Komentar>, Tbl + Ikon , <Judul>)
VarMem          = Variabel untuk menampung nilai balik
<Informasi/Komentar>        = Informasi yang ditampilkan
Tbl                           = Nilai tombol yang dibutuhkan/ditampilkan
Ikon                         = Icon yang digunakan
<Judul>                    = Judul window yang digunakan
Contoh :
Misal untuk menghapus data perlu konfirmasi dulu sebelum diproses maka pada tombol Hapus dapat buat kotak pesan seperti di bawah ini :

Dim Tanya
Tanya=MsgBox (“Yakin data dihapus?”,4+32,”Konfirmasi”)
If tanya=6 then
.
.
Window
 
End If
 

Hasilnya :



















Tombol
 
 








Gambar 29 : Contoh kotak pesan lengkap
Keterangan :
Angka 4 berarti tombol yang ditampilkan adalah tombol Yes dan No. Angka 32 berarti icon yang digunakan adalah icon tanda tanya. Pencantuman nilai angka untuk tombol dan icon seperti contoh di atas dimaksudkan supaya lebih fleksibel yaitu bisa digunakan juga untuk bahasa pemrograman visual lainnya. Tapi bisa juga dibuat dengan mencantumkan nama tombol dan nama icon.
Pernyataan If Tanya = 6 adalah pengujian untuk tombol yang ditekan. Karena tombo Yes nilai baliknya adalah 6, maka diuji apakah yang ditekan tombol Yes. Jika ya, maka akan dilaksanakan intstruksi yang ada di anta If dan End If.

Dengan bentuk lain contoh di atas dapat juga ditulis sebagai berikut :

Dim Tanya
Tanya=MsgBox (“Yakin data dihapus?”,VbYesNo+VbQuestion,”Konfirmasi”)
If tanya=6 then
.
.
End If

Untuk lebih jelasnya, di bawah ini akan diberikan nilai-nilai tombol maupun nilai-nilai icon berupa angka dan nama tombol.
Tombol :

Nilai Tombol
Tombol yang ditampilkan
Angka
Nama Tombol
0
VbOKOnly
Tombol OK
1
VbOKCancel
Tombol OK dan Cancel
2
VbAbortRetryIgnore
Tombol Abort, Retry, dan Ignore
3
VbYesNoCancel
Tombol Yes, No, dan Cancel
4
VbYesNo
Tombol Yes dan No
5
VbRetryCancel
Tombol Retry dan Cancel


Icon :

Nilai Icon
Icon yang ditampilkan
Angka
Nama Tombol
16
VbCritical
Icon silang
32
VbQuestion
Icon tanda tanya
48
VbExclamation
Icon tanda seru
64
VbInformation
Icon informasi




E. Membuat Kendali Saat Kursor Meninggalkan Fokus Kontrol
Pengendalian ini sering digunakan apabila selesai mengisi data pada suatu kontrol/objek, misalnya mengenai ukuran data yang diisikan atau pengisian data tanggal yang tidak sesuai. Apabila tidak dilakukan pengendalian maka bisa terjadi kesalahan dalam penyimpanan data. Misalnya sebuah data ditetapkan pada database memiliki lebar 20 karakter, lalu data yang diisikan melebihi 20 karakter, maka akan muncul pesan kesalahan dalam penyimpanan. Untuk itu ada beberapa hal yang perlu dipahami, yaitu sebelum kontrol meninggalkan fokus, maka hitung lebar data terlebih dahulu. Untuk menghitung lebar data gunakan fungsi LEN. Program ditulis pada kejadian LostFocus.

Contoh :
Pada form ada kontrol/Objek Text1 yang akan diisikan data nama, dimana maksimal data hanya boleh 30 karakter, maka pada kejadian LostFocus pada text1 tersebut perlu diketik perintah sebagai berikut :

If len(text1.text)>30 then
 Pesan=Msgbox(“Data lebih 30 karakter, silahkan kurangi..!”,0+64,”Informasi”)
 Text1.Setfocus
End If


F. Membuat Kendali Penekanan Tombol Enter
Secara default, apabila menekan tombol Enter setelah mengisi data pada suatu kontrol/objek, kursor tidak mau berpindah ke isian berikutnya. Perpindahan hanya bisa dilakukan apabila menekan tombol Tabstop atau memindahkan dengan Mouse. Supaya kendala itu bisa diatasi, maka perlu dilakukan pengendalian pada kejadian menekan tombol Enter (kode tombol Enter adalah 13) . Program ditulis pada kejadian KeyPress.

Contoh :
Misal pada form ada dua kontrol/objek Text1 dan Text2. Saat menekan tombol Enter pada saat diposisi Text supaya bisa berpindah ke Text2, maka tulislah perintah pada kontrol Text1 pada kejadian KeyPress sebagai berikut :

If KeyAscii=13 then
 Text2.setfocus
endif

G. Membuat Menu
Menu digunakan sebagai pengendali dalam aplikasi. Dengan menu, apabila dalam aplikasi terdapat banyak proses/form yang harus dikerjakan, maka pekerjaan lebih efisien. Kita tidak perlu membuka form satu persatu lalu dijalankan. Tentu saja hal ini tidak praktis. Sebagai contoh dimisalkan pada aplikasi yang kita miliki struktur programnya adalah sebagai berikut :

















Menu
 


























 
































Gambar 30 : Struktur Menu
1)    Membuat Menu Pull Down (Default)
Untuk membuat menu pull down lakukan langkah-langkah sebagai berikut :
-    Buatlah sebuah form baru yang digunakan untuk form menu
-    Tampilkan menu Tools
-          Pilih Menu Editor (sehingga akan ditampilkan tempat desain menu)
-          Ketiklah Pilihan menu pada bagian Caption, jangan lupa memberi nama setiap item yang dijadikan pilihan. Pemberian nama diketik pada bagian Name. Bila diinginka ada garis pemisah antara satu pilihan dengan yang lain, maka jadikan juga dia sebagai item dengan mengetik simbol tanda kurang (-) pada caption
-          Gunakan tombol-tombol yang disediakan dalam melakukan proses perancangan menu. Jika sebuah pilihan memiliki bagian, maka penulisannya dibuat lebih menjorok ke dalam dibanding pilihan induknya. Gunakan tombol anak panah yang disediakan.






Tempat menulis judul pilihan menu
 

Tempat menulis nama pilihan menu
 
 




 















Gambar 31 : Desain Menu
-          Jika sudah selesai klik tombol OK. Apabila ada yang keliru, maka akan ditampilkan komentar. Jika sudah benar posisi akan kembali ke desain form. Sebaiknya properties form perlu diatur, khususnya : Caption, Name, Startuppositian (Center Owner), Windowstate (Maximaze)

Sebagai penjelas dari hasil menu yang dirancang, maka bila form yang bersangkutan dijalankan, tampilan seperti gambar di bawah ini.



 


















Gambar 32 : Contoh Tampilan Menu Pull Down
2)    Membuat Menu Rancangan Sendiri
Setelah melihat hasil menu pull down yang dibuat di atas, terkadang karena ingin memiliki nilai kreatifitas maka dapat juga dibentuk menu berdasarkan ide sendiri. Untuk itu diperlukan rancangan dengan memanfaatkan Command Button, Frame, dan kontrol lainnya. Pengkodean yang dibuat adalah dengan melakukan pengaturan Visible pada tiap-tiap frame yang dijadikan pilihan menu. Untuk itu lakukan langkah sebagai berikut :
-    Buat form baru, lalu atur properties yang sesuai (lihat pada properties menu pull down).
-    Rancanglah pilihan menu seperti gambar di bawah ini




 




















Gambar 33 : Desain Menu Ciptaan Sendiri
-    Bila sudah selesai, sebaiknya frame dari pilihan tersebut dirapatkan (dibuat bertumpuk saja supaya tampilannya lebih baik).
-    Tulis kode program untuk kejadian Form Load dan kejadian klik pada pilihan utama. Kode selengkapnya adalah sebagai berikut :

Private Sub Command1_Click()
 Frame1.Visible = True
 Frame2.Visible = False
 Frame3.Visible = False
 Frame4.Visible = False
 Frame5.Visible = False
End Sub

Private Sub Command2_Click()
 Frame1.Visible = True
 Frame2.Visible = True
 Frame3.Visible = False
 Frame4.Visible = False
 Frame5.Visible = False
End Sub

Private Sub Command3_Click()
 Frame1.Visible = True
 Frame2.Visible = False
 Frame3.Visible = True
 Frame4.Visible = False
 Frame5.Visible = False
End Sub

Private Sub Command4_Click()
 Frame1.Visible = True
 Frame2.Visible = False
 Frame3.Visible = False
 Frame4.Visible = True
 Frame5.Visible = False
End Sub

Private Sub Command5_Click()
 Frame1.Visible = True
 Frame2.Visible = False
 Frame3.Visible = False
 Frame4.Visible = False
 Frame5.Visible = True
End Sub

Private Sub Form_Load()
 Frame1.Visible = False
 Frame2.Visible = False
 Frame3.Visible = False
 Frame4.Visible = False
 Frame5.Visible = False
End Sub


-    Simpan form, kemudian dijalankan.














 



















Gambar 34 : Tampilan Menu Ciptaan Sendiri
H. Algoritma Pengolahan Data
Pengolahan data merupakan hal yang pasti dilakukan dalam setiap aplikasi. Pengolahan data terdiri dari menambah, menyimpan, membatalkan, merubah, menghapus dan sebagainya yang menggunakan tombol-tombol sebagai kontrolnya. Untuk memudahkan pemahaman dalam melakukan pengolahan data, berikut ini akan disajikan algoritma untuk proses-proses yang digunakan.

a. Algoritma untuk tombol Tambah
- Bersihkan isian data atau berikan nilai awal
- Aktifkan isian data
- Matikan semua tombol kecuali tombol Simpan dan tombol Batal
- Tempat kursor pada isian yang pertama

b. Algoritma untuk tombol Simpan
- Lakukan pencarian untuk data yang akan disimpan (kalau sudah bekerja dengan data)
- Jika data sudah ada, tampilkan komentar
- Jika belum ada lakukan proses penyimpanan
- Matikan isian data
- Hidupkan semua tombol kecuali tombol Simpan dan tombol Batal

c. Algoritma untuk tombol Batal (sama dengan kondisi Form Load)
- Cek apakah data sudah ada atau belum (kalau sudah bekerja dengan data)
- Jika data sudah ada, maka semua tombol dihidupkan kecuali tombol simpan data tombol Batal
- Jika data belum ada, maka semua tombol dimatikan kecuali tombol Tambah dan tombol Keluar. Bersihkan isian data
- Matikan isian data

d. Algoritma untuk tombol Rubah
-  Matikan semua tombol kecuali tombol Simpan dan tombol Batal
- Aktifkan isian data
- Tempat kursor pada isian pertama yang akan dirubah

e. Algoritma untuk tombol Hapus
- Tampilkan kotak pesan untuk menanyakan kepastian proses penghapusan
- Jika dijawab Ya, maka lakukan penghapusan data
- Cek apakah posisi pointer berada diakhir record atau tidak
- Jika berada diakhir record, bawa ke awal record.

f. Algoritma untuk tombol Maju
- Cek apakah pointer berada diakhir record atau tidak
- Jika berada diakhir record tampilkan komentar
- Jika tidak berada diakhir record, pindahkan pointer ke record berikutnya

g. Algoritma untuk tombol Mundur
- Cek apakah pointer berada di awal record
- Jia berada di awal record, tampilkan komentar
- Jika tidak berada diakhir record, pindahkan ke record sebelumnya.

Untuk lebih jelasnya, rancanglah form seperti gambar berikut, lalu tulis kode programnya. Setelah selesai, simpan form tersebut dan coba dijalankan.

















 





















Gambar 35 : Rancangan Form Untuk Pengolahan Data
Keterangan :
Untuk NIP, Nama. Tempat lahir, Alamat dan Gaji menggunakan kontrol TEXT sebagai tempat isian data. Untuk Tanggal Lahir menggunakan DTPicker sebagai tempat isian. Untuk Jenis kelamin menggunakan option sebagai isian data. Untuk Agama dan Golongan menggunakan Combobox sebagai isian data.

Kode Program :
Karena belum bekerja dengan data, maka kode program yang disajikan berikut ini adalah kode-kode sederhana.


Private Sub Form_Load()
'Membersihkan/memberi nilai awal
  Text1.Text = " "
  Text2.Text = " "
  Text3.Text = " "
  DTPicker1.Value = Date
  Option1.Value = 0
  Option2.Value = 0
  Combo1.Text = " "
  Text4.Text = " "
  Combo2.Text = " "
  Text5.Text = 0
'Mematikan tombol kecuali Tambah dan Keluar
  cmdtambah.Enabled = True
  cmdsimpan.Enabled = False
  cmdbatal.Enabled = False
  cmdrubah.Enabled = False
  cmdhapus.Enabled = False
  cmdkeluar.Enabled = True
'Mematikan isian data
  Text1.Enabled = False
  Text2.Enabled = False
  Text3.Enabled = False
  DTPicker1.Enabled = False
  Option1.Enabled = False
  Option2.Enabled = False
  Combo1.Enabled = False
  Text4.Enabled = False
  Combo2.Enabled = False
  Text5.Enabled = False
End Sub

Private Sub cmdtambah_Click()
'Membersihkan/memberi nilai awal
  Text1.Text = " "
  Text2.Text = " "
  Text3.Text = " "
  DTPicker1.Value = Date
  Option1.Value = 0
  Option2.Value = 0
  Combo1.Text = " "
  Text4.Text = " "
  Combo2.Text = " "
  Text5.Text = 0
'Mengaktifkan (hidup) isian data
  Text1.Enabled = True
  Text2.Enabled = True
  Text3.Enabled = True
  DTPicker1.Enabled = True
  Option1.Enabled = True
  Option2.Enabled = True
  Combo1.Enabled = True
  Text4.Enabled = True
  Combo2.Enabled = True
  Text5.Enabled = True
 'Mematikan semua tombol kecuali tombol Simpan dan Batal
  cmdtambah.Enabled = False
  cmdsimpan.Enabled = True
  cmdbatal.Enabled = True
  cmdrubah.Enabled = False
  cmdhapus.Enabled = False
  cmdkeluar.Enabled = False
 'Membawa kursor ke isian pertama
 Text1.SetFocus
End Sub

Private Sub cmdsimpan_Click()
'Mematikan isian data
  Text1.Enabled = False
  Text2.Enabled = False
  Text3.Enabled = False
  DTPicker1.Enabled = False
  Option1.Enabled = False
  Option2.Enabled = False
  Combo1.Enabled = False
  Text4.Enabled = False
  Combo2.Enabled = False
  Text5.Enabled = False
 'Menghidupkan semua tombol kecuali tombol Simpan dan Batal
  cmdtambah.Enabled = True
  cmdsimpan.Enabled = False
  cmdbatal.Enabled = False
  cmdrubah.Enabled = True
  cmdhapus.Enabled = True
  cmdkeluar.Enabled = True
End Sub

Private Sub cmdbatal_Click()
'Membersihkan/memberi nilai awal
  Text1.Text = " "
  Text2.Text = " "
  Text3.Text = " "
  DTPicker1.Value = Date
  Option1.Value = 0
  Option2.Value = 0
  Combo1.Text = " "
  Text4.Text = " "
  Combo2.Text = " "
  Text5.Text = 0
'Mematikan tombol kecuali Tambah dan Keluar
  cmdtambah.Enabled = True
  cmdsimpan.Enabled = False
  cmdbatal.Enabled = False
  cmdrubah.Enabled = False
  cmdhapus.Enabled = False
  cmdkeluar.Enabled = True
'Mematikan isian data
  Text1.Enabled = False
  Text2.Enabled = False
  Text3.Enabled = False
  DTPicker1.Enabled = False
  Option1.Enabled = False
  Option2.Enabled = False
  Combo1.Enabled = False
  Text4.Enabled = False
  Combo2.Enabled = False
  Text5.Enabled = False
End Sub

Private Sub cmdrubah_Click()
 'Mematikan semua tombol kecuali tombol Simpan dan Batal
  cmdtambah.Enabled = False
  cmdsimpan.Enabled = True
  cmdbatal.Enabled = True
  cmdrubah.Enabled = False
  cmdhapus.Enabled = False
  cmdkeluar.Enabled = False
'Menghidupkan isian data
  Text1.Enabled = True
  Text2.Enabled = True
  Text3.Enabled = True
  DTPicker1.Enabled = True
  Option1.Enabled = True
  Option2.Enabled = True
  Combo1.Enabled = True
  Text4.Enabled = True
  Combo2.Enabled = True
  Text5.Enabled = True
 'Membawa kursor ke isian pertama
 Text1.SetFocus
End Sub

Private Sub cmdhapus_Click()
Dim jawab
jawab = MsgBox("Benar mau dihapus?", 4 + 32, "Konfirmasi")
If jawab = 6 Then
'Membersihkan/memberi nilai awal karena belum bekerja dengan data
  Text1.Text = " "
  Text2.Text = " "
  Text3.Text = " "
  DTPicker1.Value = Date
  Option1.Value = 0
  Option2.Value = 0
  Combo1.Text = " "
  Text4.Text = " "
  Combo2.Text = " "
  Text5.Text = 0
End If
End Sub

Private Sub cmdkeluar_Click()
 Unload Me
End Sub


I.  Bekerja Dengan Prosedur
Dari contoh di atas, terlihat bahwa kode program yang dibutuhkan cukup banyak. Namun kalau diteliti tampak bahwa ada beberapa perintah yang persis sama yang ditulis berulang-ulang. Dalam pemrograman cara seperti itu tidaklah efisien. Untuk itu perlu dikembangkan suatu metode untuk mengatasinya. Salah satu metode yang dapat digunakan adalah dengan cara bekerja dengan prosedur. Untuk instruksi yang sering dipakai ditempatkan dalam sebuah prosedur. Jika dibutuhkan tinggal memanggil prosedur tersebut.


a.   Membuat Prosedur
-          Tampilkan menu Tools
-          Pilih Add Procedure


 














Gambar 36 : Membuat Prosedur
-          Ketik nama prosedur yang dibutuhkan pada bagian Name
-          Klik tombol OK, sehingga akan ditampilkan prosedur. Tulislah instruksi yang dibutuhkan diantara Public Sub Matitombol dan End Sub.

Public Sub Matitombol()

End Sub

b.   Memanggil Prosedur
Untuk memanggil prosedur dapat digunakan perintah sebagai berikut :

Call <namaprosedur> atau <namaprosedur>

Contoh :
Call Matitombol
Atau
Matitombol

c.    Hasil Kode Program Seperti Contoh Dengan Menggunakan Prosedur
Setelah menggunakan prosedur, maka kode program seperti contoh lebih singkat. Jika dibuat perkiraan hampir setengah dari kode yang tidak menggunakan prosedur. Selengkapnya dapat dilihat seperti di bawah ini.





Private Sub Form_Load()
'Membersihakan/memberi nilai awal
  Call bersihisi
'Mematikan tombol kecuali Tambah dan Keluar
  Call Matitombol
  cmdtambah.Enabled = True
  cmdkeluar.Enabled = True
'Mematikan isian data
  Call matiisi
End Sub

Private Sub cmdtambah_Click()
'Membersihkan/memberi nilai awal
  Call bersihisi
'Mengaktifkan (hidup) isian data
  Call hidupisi
'Mematikan semua tombol kecuali tombol Simpan dan Batal
  Call Matitombol
  cmdsimpan.Enabled = True
  cmdbatal.Enabled = True
'Membawa kursor ke isian pertama
 Text1.SetFocus
End Sub

Private Sub cmdsimpan_Click()
'Mematikan isian data
  Call matiisi

 'Menghidupkan semua tombol kecuali tombol Simpan dan Batal
  Call hiduptombol
  cmdsimpan.Enabled = False
  cmdbatal.Enabled = False
End Sub

Private Sub cmdbatal_Click()
'Membersihkan/memberi nilai awal
  Call bersihisi
'Mematikan tombol kecuali Tambah dan Keluar
  Call Matitombol
  cmdtambah.Enabled = True
  cmdkeluar.Enabled = True
'Mematikan isian data
  Call matiisi
End Sub

Private Sub cmdrubah_Click()
 'Mematikan semua tombol kecuali tombol Simpan dan Batal
  Call Matitombol
  cmdsimpan.Enabled = True
  cmdbatal.Enabled = True
'Menghidupkan isian data
  Call hidupisi
 'Membawa kursor ke isian pertama
 Text1.SetFocus
End Sub
Private Sub cmdhapus_Click()
Dim jawab
jawab = MsgBox("Benar mau dihapus?", 4 + 32, "Konfirmasi")
If jawab = 6 Then
'Membersihkan/memberi nilai awal karena belum bekerja dengan data
  Call bersihisi
End If
End Sub

Private Sub cmdkeluar_Click()
 Unload Me
End Sub

Public Sub Matitombol()
  cmdtambah.Enabled = False
  cmdsimpan.Enabled = False
  cmdbatal.Enabled = False
  cmdrubah.Enabled = False
  cmdhapus.Enabled = False
  cmdkeluar.Enabled = False
End Sub

Public Sub hiduptombol()
  cmdtambah.Enabled = True
  cmdsimpan.Enabled = True
  cmdbatal.Enabled = True
  cmdrubah.Enabled = True
  cmdhapus.Enabled = True
  cmdkeluar.Enabled = True
End Sub

Public Sub matiisi()
  Text1.Enabled = False
  Text2.Enabled = False
  Text3.Enabled = False
  DTPicker1.Enabled = False
  Option1.Enabled = False
  Option2.Enabled = False
  Combo1.Enabled = False
  Text4.Enabled = False
  Combo2.Enabled = False
End Sub

Public Sub hidupisi()
  Text1.Enabled = True
  Text2.Enabled = True
  Text3.Enabled = True
  DTPicker1.Enabled = True
  Option1.Enabled = True
  Option2.Enabled = True
  Combo1.Enabled = True
  Text4.Enabled = True
  Combo2.Enabled = True
  Text5.Enabled = True
End Sub
Public Sub bersihisi()
  Text1.Text = " "
  Text2.Text = " "
  Text3.Text = " "
  DTPicker1.Value = Date
  Option1.Value = 0
  Option2.Value = 0
  Combo1.Text = " "
  Text4.Text = " "
  Combo2.Text = " "
  Text5.Text = 0
End Sub



J. Membuat Tombol Fungsi Ganda
Dari contoh pengolahan di atas terlihat bahwa jumlah tombol perintah cukup banyak. Hal ini sebenarnya kurang bijaksana, karena interface akan penuh dengan tombol-tombol. Untuk itu perlu disiasati dengan menjadi tombol tertentu berfungsi ganda. Misalnya tombol Tambah sekaligus juga untuk tombol Simpan. Begitu juga untuk tombol Rubah sekaligus menjadi tombol Batal.
Untuk lebih jelas, maka modifikasi rancangan contoh program pengolahan data di atas sebagai berikut :



 




















Gambar 37 : Pengolahan Data Dengan Penggunaan Tombol Fungsi Ganda

Kode program untuk tombol Tambah dan Tombol Rubah sebagai berikut :

Private Sub cmdrubah_Click()
 If cmdrubah.Caption = "Rubah" Then
   cmdrubah.Caption = "Batal"
   cmdtambah.Caption = "Simpan"
 
'Tombol Hapus dan Keluar dimatikan
   cmdhapus.Enabled = False
   cmdkeluar.Enabled = False
'Menghidupkan isian data
  Call hidupisi
 'Membawa kursor ke isian pertama
 Text1.SetFocus

Else
   cmdrubah.Caption = "Rubah"
   cmdtambah.Caption = "Tambah"

'Tombol Hapus dan Keluar dihidupkan
   cmdhapus.Enabled = True
   cmdkeluar.Enabled = True
'Membersihkan/memberi nilai awal
  Call bersihisi
'Mematikan isian data
  Call matiisi
End If
End Sub

Private Sub cmdtambah_Click()
 If cmdtambah.Caption = "Tambah" Then
   cmdtambah.Caption = "Simpan"
   cmdrubah.Caption = "Batal"
  
'Tombol Hapus dan Keluar dimatikan
   cmdhapus.Enabled = False
   cmdkeluar.Enabled = False
'Membersihakan/memberi nilai awal
  Call bersihisi
'Mengaktifkan (hidup) isian data
  Call hidupisi
'Membawa kursor ke isian pertama
 Text1.SetFocus

Else
   cmdtambah.Caption = "Tambah"
   cmdrubah.Caption = "Rubah"

'Tombol Hapus dan Keluar dihidupkan
   cmdhapus.Enabled = True
   cmdkeluar.Enabled = True
'Mematikan isian data
  Call matiisi
End If
End Sub




Tidak ada komentar:

Posting Komentar