Menghitung dan Mengetahui Komponen pada suatu Form Delphi

Halo sodara2…sedulur dan setanah air….
Kembali lagi dengan bejitalun ^^

Oke…hari ini, di hari Minggu yang cerah ini, aku ingin memberikan tutorial singkat bagaimana kita bisa mengetahui jumlah beserta nama dari komponen yang kita pasang pada form Delphi. Ada beberapa keguanaan yang bisa kita dapatkan dengan menggunakan cara ini. Salah satunya kita tidak perlu menyebutkan nama-nama komponen satu-persatu yang sebelumnya Enabled bernilai True akan dijadikan bernilai False (karena kita menginginkan agar komponen tersebut tidak dapat di-klik). Seandainya pada Form yang kita buat terdapat lebih dari 50komponen, dan semua komponen ingin kita ubah nilai Enabled nya…bayangkan, brapa baris yang akan tertulis pada listing program Anda. Misalnya begini:
——————————————————————————————————–

If (not Button1.Enabled) then Button1.Enabled := True;
If (not Button2.Enabled) then Button2.Enabled := True;
If (not Button3.Enabled) then Button3.Enabled := True;
.....dst

——————————————————————————————————–

Memang kita bisa copas (Copy-Paste) dari listing berikutnya, tapi apa g mblenegh lihat listing panjang yang isinya cuma pengen buat nilainya jadi True aja????
Lha terus gimana dong caranya???

Hmm….masih ingat dengan penggunaan looping kan??
Yups, kita akan pake cara looping untuk mempermudahnya dan dari beberapa statement looping yang ada pada Delphi kita menggunakan statement for. Karena statement for memerlukan nilai awalan dan akhiran, maka kita perlu mengetahui jumlah komponen yang terpasang pada Form kita, dan pada Delphi sudah ada fungsi untuk menghitung jumlah komponen tersebut, yaitu dengan menggunakan fungsi ComponentCount.

Jadi, pada kasus seperti di atas dapat kita tuliskan listing program seperti berikut ini:
——————————————————————————————————–

var i: Integer;

for i:=0 to ComponentCount-1 do
begin
if (not TButton(Components[i]).Enabled) then
TButton(Components[i]).Enabled:=True;
end;

--------------------------------------------------------------------------------------------------------
Cukup dengan sekian baris kita sudah bisa menghasilkan sejumlah komponen yang tadinya Enabled bernilai False menjadi True. Meskipun pada contoh tersebut menggunakan TButton, namun sudah saya coba untuk hampir semua komponen (TEdit, TLabel) dengan menggunakan listing seperti tersebut tetap bisa.

Kegunaan dari fungsi ComponentCount tidak hanya itu saja. Misal kita ingin memilih komponen dengan tipe klas TButton saja, maka listingnya akan menjadi seperti berikut:
--------------------------------------------------------------------------------------------------------

var i: Integer;

for i:=0 to ComponentCount-1 do
begin
if (not Components[i].ClassType = TButton) then
TButton(Components[i]).Enabled:=True;
end;

--------------------------------------------------------------------------------------------------------

Nah, dari beberapa tutorial di atas, sebaiknya dicoba yang lain juga agar lebih paham dan dapat menggunakan kegunaan fungsi ComponentCount dan teman-temannya, seperti Tag, Name, dan ClassName.

OK Guys....sekian dulu....

Leave a Reply