Action Sama Pada Banyak Object

Jika anda bekerja dengan Visual Basic 6 tentu dalam pekerjaan programming, anda akan sering sekali memanipulasi object-object di dalamnya (lha iya lah… masa mau manipulasi apalagi? hehehe…). Dan juga termasuk kontrol-kontrol yang ada dalam form-form anda. Dan di artikel ini saya mau membagi satu trik untuk memperpendek baris program kita, ketika kita ingin memberlakukan aksi yang sama pada banyak object didalam satu form tertentu.

Misalnya, jika anda ingin mendisable semua textbox yang ada didalam suatu form, tentu anda bisa menggunakan cara yang biasa:

Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False

Dan itu ngga salah sih, cuman bayangin aja kalau dalam satu form itu ada 12 textbox, masa mau mengulang baris itu sebanyak 12 kali?

Kita bisa menggunakan For Each untuk memberikan nilai yang sama pada property control yang sejenis disatu form. Syntaxnya cukup sederhana, untuk melakukan hal yang sama seperti diatas, tulis aja seperti ini:

For Each contrl In Me.Controls
    If (TypeOf contrl Is TextBox) Then
      contrl.Enabled = False
    End If
Next contrl

Anda bisa mengaplikasikan ke seluruh control diform anda, cukup ganti di bagian TypeOf contrl Is TextBox. Ganti Textbox ke nama object anda. Misal, anda ingin mengaplikasikan nilai yang sama pada Combobox, ganti saja baris itu menjadi TypeOf contrl Is Combobox.

Untuk mengubah properti-nya, ubah contrl.Enabled = False ke properti dengan yang anda inginkan. Misalnya ingin memberikan nilai kosong pada Textbox itu, ganti menjadi contrl.Text = "".
Cukup mudah kan?

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.