Delphi - ComboBox Bileşeni
4 Aralık 2010 Cumartesi 01:07   Kadir Aba
ComboBox bileşeni ListBox bileşeni ile bir çok konuda benzerliğe sahip olan bir bileşendir. ComboBox’ta elemanlar ListBox’ta olduğu gibi açık bir şekilde değil kapalı bir durumda gösterilirler.

Delphi ComboBox Bileşeni
 
ComboBox bileşeni ListBox bileşeni ile bir çok konuda benzerliğe sahip olan bir bileşendir. ComboBox’ta elemanlar ListBox’ta olduğu gibi açık bir şekilde değil kapalı bir durumda gösterilirler.

Delphi ComboBox Bileşeni
ComboBox Bileşeninin Bazı Özellikleri ve Kullanımları Text Özelliği: ComboBox’ta seçili olan elemanın değerini öğrenmek ve değiştirmek için kullanılır.
ShowMessage(ComboBox1.Text);  // Text özelliğini gösterir
ComboBox1.Text := Edit13.Text; // Text özelliğini değiştirir

Items Özelliği: ComboBox bileşenin her bir elemanına verilen isimdir. ComboBox bileşeninin Items özelliği sayesinde ComboBox elemanlarını programın tasarım aşamasında da doldurabiliriz. Items.Add Komutu: ComboBox bileşenine kod kullanarak eleman eklemek için Items.Add komutu kullanılır.
procedure TForm1.Button1Click(Sender: TObject);
begin
    ComboBox1.Items.add(Edit1.Text);
end;

Yukarıdaki kodu çalıştırdığımız zaman ComboBox bileşeninin son satırına Edit içerisinde yazan bilgi de eklenecektir. ComboBox bileşenine Add komutu ile yeni bir satır eklerken eklenecek olan bilginin String tipinde olması gerekir. Eğer eklenecek olan veri string tipinden başka bir tipteki değişkende saklı ise IntToStr, FloatToStr gibi tip dönüşümleri yapmak gerekir.
var 
    i : Integer;
begin
    i := 300;
    ComboBox1.Items.Add( InttoStr(i));
end;

Örnekte, üzerinde 300 değerini tutan Integer tipindeki “i” değişkeninin değerini ComboBox ‘a eklemek için Integer tipten String tipe dönüşüm yapan IntToStr komutunu kullandık. Lines.Assign Komutu: Aynı anda birden fazla elemanı ComboBox’a eklemek için kullanılır. Aktarılacak olan bilgiler bir listeden, ListBox, Memo gibi bileşenlerden, başka bir ComboBox bileşeninden olabileceği kayıtlı bir dosyadan da bilgi aktarımı yapabiliriz. Aşağıdaki örnekte Memo1’de yer alan bilgilerin ComboBox’a aktarılması ile ilgili kod parçası verilmiştir.
procedure TForm1.Button3Click(Sender: TObject);
begin
    ComboBox1.Items.Assign(Memo1.Lines);
end;

Items.Clear Komutu: ComboBox içerisinde yer alan bilgileri temizlemek için kullanılır. Bu komut kullanıldığı zaman ComboBox içerisinde yer alan bütün bilgiler temizlenecektir.
ComboBox1.Items.Clear;

Items.Count Komutu: ComboBox bileşenindeki elemanların sayını Integer olarak dönderir. Örnek bir kullanımı aşağıdaki gibidir. Örnekte, ComboBox’ın eleman sayısı kullanıcıya mesaj olarak gösterilmektedir.
var
    elemanSayisi : Integer;
begin
    elemanSayisi := ComboBox1.Items.Count;
    ShowMessage(IntToStr(elemanSayisi));
end;

Items.IndexOf Komutu: Girilen bir String tipteki değerin ComboBox içerisinde kaçıncı satırda olduğunu gösterir. Eğer girilen değer ComboBox ‘ın elemanları arasında yoksa o zaman komut -1 değerini dönderir, aksi durumlarsa girilen değerin yerini dönderir. ComboBox bileşeninin elemanlarının yerleri 0’dan başlar. Yani ComboBox bileşeninin ilk satırı 1 numaralı satır değil 0 numaralı satırdır. Eğer ComboBox bileşeninde toplam 5 satır varsa sonra satırın numarası da 5 değil 4 olacaktır.
var
    yer : Integer;
begin
    yer := ComboBox1.Items.IndexOf(Edit2.Text);
    ShowMessage(IntToStr(yer));
end;

Items.Insert Komutu: ComboBox’a eleman eklemek için kullanılır. Add komutundan farklıdır. Çünkü Add komutu ile sadece listenin sonuna eleman eklenebilirken Insert komutu ile istenilen herhangi bir sıraya eleman eklenebilir.
var
    yer : Integer;
begin
    yer := StrToInt(edit3.Text);
    ComboBox1.Items.Insert(yer, Edit4.Text);
end;

Items.Delete Komutu: Bu komut sayesinde ComboBox bileşeninin herhangi bir satırı silinebilir. Komut kullanılırken silinecek olan satırın numarası parametre olarak komuta bildirilmelidir.
var
    silinecekSatir : Integer;
begin
    silinecekSatir := StrToInt(Edit5.Text);
    ComboBox1.Items.Delete(silinecekSatir);
end;

Items.Strings Komutu: Belirtilen satırdaki bilgiyi öğrenmek veya o satırdaki elemanın değerini değiştirmek için kullanılır. Belirtilen satırdaki elemanı gösteren kodlar
var
    yer : Integer;
begin
    yer := StrToInt(Edit9.Text);
    ShowMessage(ComboBox1.Items.Strings[yer]);
end;

Belirtilen satırdaki elemanları belirtilen bir yazı ile değiştiren kodlar
var
    yer : Integer;
begin
    yer := StrToInt(Edit9.Text);
    ComboBox1.Items.Strings[yer] := Edit10.Text;
end;

Items.Exchange Komutu: Bu komut sayesinde satır numarası verilen iki satır kendi arasında değiştirilir.
var
    ilkSatir, ikinciSatir : Integer;
begin
    ilkSatir := StrToInt(Edit6.Text);
    ikinciSatir := StrToInt(Edit7.Text);
    ComboBox1.Items.Exchange(ilkSatir,ikinciSatir);
end;

Items.LoadFromFile Komutu: Bu komut sayesinde ComboBox bileşenine dosyada kayıtlı bulunan bilgiler aktarılabilir. Eğer dosyanın tam bulunduğu yer ile birlikte ismi yazılırsa ilgili dosyadaki bilgiler gelir, dosyanın sadece ismi yazılır ise bu kez dosya exe’nin bulunduğu yerde aranır ve ondaki bilgiler aktarılır.
ComboBox1.Items.LoadFromFile('anlatim.txt');

Items.SaveToFile Komutu: Bu komut ile ComboBox’ta yer alan bilgiler belirtilen bir dosyaya kaydedilir.
ComboBox1.Items.SaveToFile(Edit8.Text);

ItemIndex Özelliği: ItemIndex özelliği ComboBox içerisindeki seçili olan elemanın sıra numarasını verir. Veya herhangi bir satırdaki elemanı seçili hale getirir. Seçili elemanın sıra numaranı veren kodlar
var
    yer : Integer;
begin
    yer := ComboBox1.ItemIndex;
    ShowMessage(IntToStr(yer));
end;

İstenilen elemanı seçili hale getiren kodlar
var
    yer : Integer;
begin
    yer := StrToInt(Edit11.Text);
    ComboBox1.ItemIndex := yer;
end;

DropDownCount Özelliği: ComboBox bileşeni açıldığı zaman açılan listede gösterilecek olan eleman sayısını belirler.

Yukarıda anlatılanlarla ilgili kodları içeren örnek uygulamayı indirmek için tıklayınız.

ComboBox Uygulaması




Yazı Etiketleri



Facebook Yorumlar



Yorumlar


çok yararlı oldu teşekkürler.

     24 Ocak 2013 Perşembe 6:34 PM    
0 1


ComboBox2.Items.LoadFromFile('aciklama.txt'); çok işime yaradı tşk ederim...

Mesut Bahtiyar     13 Eylül 2011 Salı 11:54    
2 0



Benzer Yazıları





Etiket Bulutu
bilgisayar   temel bilgisayar   temel bilgisayar konuları   delphi   mesaj   showmessage   örnek   ShowMessageFmt   Label   Edit   Rastgele Sayı Üretmek   Random   Randomize   Button   TButton   Memo   TMemo   ListBox   ComboBox   TComboBox   Açılır Liste   delphi;tip dönüştürme;StrToInt;IntToStr   StrToInrDef   tip dönüştürme   StrToInt   IntToStr   StrToFloat   FloatToStr   StrToFloatDef   DateToStr   StrToDate   StrToDateDef   DateTimeToStr   StrToDateTime   StrToDateTimeDef   TimeToStr   StrToTime   uygulama   Oyun   Taş Kağıt Makas Oyunu   Image   timer   OpenDialog   SaveDialog   notepad   Mesleki İngilizce   TELEPHONING & E-MAIL   TELEPHONING   E-MAIL   Turizm Otel   Turizm Seyahat   IF TEST   Air travel - Vocabulary   “Slumdog Millionaire” Questions   Email   Final Sınavı   Conditional Sentences   First Conditional   Second Conditional   Third Conditional   air   travel   Slumdog Millionaire   Turizm Seyahat Bölümü Final Sınavı Konuları   Telephonig & Email   Ticari Matematik   Matematik   Turizm ve Seyahat işletmeciliği   Turizm ve Otel İşletmeciği   İngilizce ı   Office Word 2007   Algoritma   Algotirma   Sorular ve Çözümleri   Görsel Programlama   Sorular ve Cevapları   Soru ve Cevapları   Veri Tabanı   SQL   DELETE   UPDATE   SELECT   Mali Tablolar Analizi   skit   Excel 2007   Excel Fonksiyonları   Excel   Excel Uygulamaları   Veritabanı   ADO   ADOConnection   Access   Microsoft Access   c#   checkbox   radiobutton   mesaj işlemleri   pascal   write   writeln   read   readln   tamsayı   ondalıklı sayı   sayı biçimlendirme   if   if-then-else   karşılaştırma komutları   programlama temelleri   asp.net   repeater   onMouseMove   GetTickCount   değişken   if-else   döngü   for   for döngüsü   radiogroup   panel   groupbox   scrollbar   trackbar   case of   Vize Sınavı   TextBox   C# Örnekleri   PasswordChar   while-do döngüsü   Delphi Konsol   sayı tahmin oyunu   Dataset   Winforms   mainmenu   popupmenu   OpenPictureDialog   ColorDialog   FontDialog   dizi   array   Record Tip   Procedure   Function   sınav   adotable   datasource   dbgrid   notepad   paint   Genel