30-08-2019, Saat: 20:18
(30-08-2019, Saat: 17:59)bünyamin68 Adlı Kullanıcıdan Alıntı: HALİL HAN BADEM hocam senden bir konu hakkında daha yardım almak istiyorum comboboxa veri tabanından kodlarla veri çekiyorum.Benim istediğim ben comboboxa veri girmeye başladığım anda veriler filtrelensin istiyorum bu filtrelenme işlemi olurken de comboboxun aşağısına benzer kelimeler listelensin tam eşleşme sağlandığında sadece o kelime görünsün istiyorum .kusura bakma isteklerim biraz kafa karıştırı olabilir. kodum var aslında ama sadece ilgili satıra getiriyor süzme yapmıyor kullandığım kod aşağıdadır.
var
i:integer;
begin
With adoquery2 do
begin
close;
sql.clear;
sql.add('SELECT distinct PLAKANO, PLAKANO FROM 2_TARTIM');
open;
combobox1.Clear;
adoquery2.First;
while not adoquery2.Eof do
begin
for i := 1 to adoquery2.FieldCount - 1 do
begin
combobox1.Items.Add(adoquery2.Fields[i].AsString);
end;
adoquery2.Next;
end;
Eğer ki her kelime yazışında sorgu çalıştırırsan bu bir probleme dönüşür. İlk olarak veritabanından gelen bilgileri bir TStringList nesnesine alıp lokalde işlemleri yapmaya başla. TStringList içinden filtreleme yaparak, her kelime yazışında o StringList verisini Combobox ile eşitlersen sadece yazdığın veriler önüne gelecektir. Buna istinaden halihazırda combobox ile yazdığın data AutoComplete özelliği ile seçilmekte.
TStringList nesnesi içerisinde filtreleme yapmak için şu kaynaklara göz atabilirsin:
https://www.tek-tips.com/viewthread.cfm?qid=542080
http://delphigroups.info/2/8c/385336.html
İyi çalışmalar.


