listbox a aynı kayıt 2.ci kere yapılamasın

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
webaytek
Üye
Mesajlar: 377
Kayıt: 23 Haz 2004 10:58

listbox a aynı kayıt 2.ci kere yapılamasın

Mesaj gönderen webaytek »

Sitede ve DTOffline v3 te aradım ama bulamadım. Konu da basit biliyorum... O yüzden kusura bakmayın...

isteğim şu... bi mailsender programı yazdım. herşey süper çalışıyo fakat tabii ki aynı dosyanın 2 kere gönderilmesini istemiyorum. ancak bunun için bir engel de yok... İnsan farketmeden aynı dosyayı 5 kere falan ekleyip öyle de yollayabiliyo. Gerisi malum....

İsteğim şu;

Kod: Tümünü seç

if opendialog1.execute then
begin
listbox1.items.add(opendialog1.filename);
aynikayitvarsasil();
end;
Diyalog Kutusu ile dosya seçtirip listbox1'e (opendialog1.filename olarak) ekletiyorum. Ancak burada bana 1 tek şey lazım. eğer dosya ismi listede varsa Eklememesini istiyorum. benim geçici çözümlerim genellikle ekledikten sonra temizlik yapmak şeklinde... ama işime gelmiyor açıkçası... bana Listeye 2.ci kere aynı kayıt yapılmasını engelleyecek bir çözüm gerekiyor. ŞİMDİDEN TEŞEKKÜR EDERİM
Kullanıcı avatarı
unicorn64
Üye
Mesajlar: 919
Kayıt: 04 Nis 2006 08:56
Konum: yine yeniden Ankara ^_^

Mesaj gönderen unicorn64 »

sanırım eklemeden önce kontrol etmek, ekledikten sonra silmekten daha mantıklı olur.

Kod: Tümünü seç

if opendialog1.execute then 
 begin 
   //indexof verilen stringin listboxda kaçıncı indexte olduğunu verir   
   //listboxda yoksa -1 verir
   
    if listbox1.items.indexof(opendialog1.filename)=-1 then  //listbox da yoksa
        listbox1.items.add(opendialog1.filename);  //ekle
  end; 
Kullanıcı avatarı
webaytek
Üye
Mesajlar: 377
Kayıt: 23 Haz 2004 10:58

Mesaj gönderen webaytek »

Ellerin dert görmesin @unicorn64 sorun çözüldü...
Kullanıcı avatarı
unicorn64
Üye
Mesajlar: 919
Kayıt: 04 Nis 2006 08:56
Konum: yine yeniden Ankara ^_^

Mesaj gönderen unicorn64 »

bişi diil kardeş yararlı olabildiysek ne mutlu...
Cevapla