combobox z-a sıralama

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
serqet
Üye
Mesajlar: 6
Kayıt: 01 Nis 2014 10:22

combobox z-a sıralama

Mesaj gönderen serqet »

merhaba arkadaşlar aşağıda kullandığım kod ile combobox'a gelen veriler a-z ye sıralanıyor fakat ben z-a ya sıralamasını istiyorum nasıl bir değişiklik yapmam gerekiyor acaba? teşekkür ederim.

Kod: Tümünü seç

if (findfirst(ksec +'\*.s',faAnyfile-faDirectory,SearchRec)=0) then
try
repeat
combobox1.Items.Add(searchrec.Name);
until(findnext(searchrec)<>0);

combobox1.Sorted:=true;
finally
findclose(searchrec);
end;
  end;
  end;
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2381
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: combobox z-a sıralama

Mesaj gönderen freeman35 »

searchrec.Name'i geçici bir X: Tstringliste; al, x.Sorted:=true; combobox1.Sorted:=false; yap ve combobox1 e X i sondan başa doğru döngü ile ekle
kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
ikra
Üye
Mesajlar: 901
Kayıt: 28 Nis 2005 01:26
Konum: Simdilik Topragin Üstü

Re: combobox z-a sıralama

Mesaj gönderen ikra »

Kod: Tümünü seç

var list: tstringlist;
I: integer;
Begin
  List := tstringlist.create;
  List.strings.assign(combobox.items);
  List.sorted := true;

  Combobox.sorted := false;
  Combobox.items.clear;

  For i := pred(list.count) downto 0 do
    Combobox.items.add(list[i]);

  List.free;
End;
kıdemsiz üye
Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: combobox z-a sıralama

Mesaj gönderen xozcanx »

Merhaba;
Farklı bir yöntem olarak ta aşağıdaki gibi bir yöntem izleyebilirsiniz.

Kod: Tümünü seç

var
sayi,i,sira:Integer;
begin
   ComboBox1.Sorted:=true;//Alfabetik Sırala
   sayi:=ComboBox1.Items.Count;
   i:=0;
   sira:=sayi-1;
   Repeat
     ComboBox1.Items.Exchange(i,sira); //Tersine Çevir
     inc(i); 
     Dec(sira);
   Until 
   i>(sayi-1)/2;
end;
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
Cevapla