10-04-2009, 20:15
Merhaba..
Bir önceki çalışmamızda hatırlarsanız form üzerindeki bir metin kutusuna girdiğimiz kelimeyi Personel İsmi içinde barındıran kayıtları filtrelemiştik..
Şimdi bunu bir ileri safhaya taşıyalım ve metin kutusuna harfleri yazdıktan sonra değilde yazdığımız sırada listedeki kayıtlar da filtrelensin..
Bu işlemin, daha önce ActiveX texbox nesnesi ile yapılmış örneklerini görmüş olabilirsiniz.. Bu OLE nesnesine girilen harfler değiştikçe(arttıkça) listedeki verilerde oluşan bu metine göre değişiyor ve yeniden süzülüyor.. (tabi kodlar ve deyimler ilave ederek)
Biz, şimdi hiçbir OLE nesnesi kullanmadan ve de çok daha pratik şekilde bu işlemi yapacağız..
Önce Listemizin ve Metin Kutumuzun olduğu formumuzu tasarımda açalım..
Form üzerine Araç Kutusundan yeni bir metin kutusu (metin5) koyalım.. Biçim özelliklerinden Görünür seçeneğini Hayır olarak değiştirelim..
Sonra kayıt arama-filtreleme için kelimeler gireceğimiz metin kutusunun (metin1) Olay / Değiştiğinde
yordamına şu kodu yazalım..:
Bu kod metin1 (arama-filtreleme için anahtar kelimeleri yazdığımız metin kutusunun adı) metin kutusuna yazdığımız değerleri daha önce gizlediğimiz Metin5 metin kutusuna yazdırıyor.. Harfler çoğaldıkça yani metin1 değiştikçe Metin5 de aynı değeri alıyor..
Şimdi yazdığımız değeri taşıyan bu metin kutusunu listemizin sorgusuna ölçüt göstereceğiz..
Sorgumuzu tasarımda açalım ve İsim alanının ölçütüne bir önceki bölümde işlediğimiz gibi Like işleci yardımı ile kriterimizi yazalım..
Son olarakta her yeni harfi girdikten sonra listeyi tekrardan sorgulamak için yukarıdaki kodun sonuna
ekleyelim..
Şimdi tamamdır..
Artık arama kutusuna her harfi yazdığımız anda liste oluşan harf kümesine- kelimeye göre filtreleniyor..
Durun! unuttum. Yeni bir arama için kutuyu boşaltacak bir düzenek yapalım bir de..
Hemen forma bir düğme koyalım ve Tıklandığında Olay Yordamına şu kodu yazalım..:
Şimdi tamamdır işte..
Bir sonraki bölümde olayı abartalım ve tek metin kutusundan birden fazla alandaki verileri filtreleyelim.. Hatta bunu filtrelemek istediğimiz alanı seçerek yapalım..
Görüşmek üzere..
Taruz..
Bir önceki çalışmamızda hatırlarsanız form üzerindeki bir metin kutusuna girdiğimiz kelimeyi Personel İsmi içinde barındıran kayıtları filtrelemiştik..
Şimdi bunu bir ileri safhaya taşıyalım ve metin kutusuna harfleri yazdıktan sonra değilde yazdığımız sırada listedeki kayıtlar da filtrelensin..
Bu işlemin, daha önce ActiveX texbox nesnesi ile yapılmış örneklerini görmüş olabilirsiniz.. Bu OLE nesnesine girilen harfler değiştikçe(arttıkça) listedeki verilerde oluşan bu metine göre değişiyor ve yeniden süzülüyor.. (tabi kodlar ve deyimler ilave ederek)
Biz, şimdi hiçbir OLE nesnesi kullanmadan ve de çok daha pratik şekilde bu işlemi yapacağız..
Önce Listemizin ve Metin Kutumuzun olduğu formumuzu tasarımda açalım..
Form üzerine Araç Kutusundan yeni bir metin kutusu (metin5) koyalım.. Biçim özelliklerinden Görünür seçeneğini Hayır olarak değiştirelim..
Sonra kayıt arama-filtreleme için kelimeler gireceğimiz metin kutusunun (metin1) Olay / Değiştiğinde
yordamına şu kodu yazalım..:
Visual Basic
- Dim Bul As String
- Bul = metin1.Text
- Me.Metin5.Value = Bul
Bu kod metin1 (arama-filtreleme için anahtar kelimeleri yazdığımız metin kutusunun adı) metin kutusuna yazdığımız değerleri daha önce gizlediğimiz Metin5 metin kutusuna yazdırıyor.. Harfler çoğaldıkça yani metin1 değiştikçe Metin5 de aynı değeri alıyor..
Şimdi yazdığımız değeri taşıyan bu metin kutusunu listemizin sorgusuna ölçüt göstereceğiz..
Sorgumuzu tasarımda açalım ve İsim alanının ölçütüne bir önceki bölümde işlediğimiz gibi Like işleci yardımı ile kriterimizi yazalım..
Son olarakta her yeni harfi girdikten sonra listeyi tekrardan sorgulamak için yukarıdaki kodun sonuna
Visual Basic
- Me.Liste8.Requery
ekleyelim..
Şimdi tamamdır..
Artık arama kutusuna her harfi yazdığımız anda liste oluşan harf kümesine- kelimeye göre filtreleniyor..
Durun! unuttum. Yeni bir arama için kutuyu boşaltacak bir düzenek yapalım bir de..
Hemen forma bir düğme koyalım ve Tıklandığında Olay Yordamına şu kodu yazalım..:
Visual Basic
- Me.metin1 = ""
- Me.Metin5 = ""
- Me.Liste8.Requery
Şimdi tamamdır işte..
Bir sonraki bölümde olayı abartalım ve tek metin kutusundan birden fazla alandaki verileri filtreleyelim.. Hatta bunu filtrelemek istediğimiz alanı seçerek yapalım..
Görüşmek üzere..
Taruz..
Bulunamayan yerleri bulmak için önce kaybolmak gerekir.
SORU SORMA KILAVUZU
Giriş | Sormadan Önce | İlgili Forumu dikkatlice seçin | Anlamlı ve duruma uygun konu başlıkları kullanın | Anlamsız soru cümleleri kurmayın | Açık, dilbilgisi kurallarına uygun ve sözdizimlerine dikkate ederek yazın | Sorunuz sizin için çok acil olsa bile, çok acil diye yazmayın | Sorununuz hakkında tam ve aydınlatıcı iletiler yazın | Amacınızı belirtin | Problemin belirtilerini tanımlayın, kendi tahminlerinizi değil | Sorunuz hakkında açık olun | Nezaket asla yaralamaz ve bazen oldukça yararlıdır | Boyut her şey değildir! | Kabalıkla ilgilenmek | Cevabı E-Posta ile istemeyin | İnsanlardan özel mesajla cevap vermelerini istemeyin | Eğer cevabı anlamadıysanız | Şayet bir cevap alamazsanız | Sorununuz çözüldükten sonra küçük bir not ile bildirin | Sorulmaması gereken türde sorular | İyi ve kötü sorular
Sorulara nasıl doğru düzgün cevap verilir
Kaptan Hector Barbossa
SORU SORMA KILAVUZU
Giriş | Sormadan Önce | İlgili Forumu dikkatlice seçin | Anlamlı ve duruma uygun konu başlıkları kullanın | Anlamsız soru cümleleri kurmayın | Açık, dilbilgisi kurallarına uygun ve sözdizimlerine dikkate ederek yazın | Sorunuz sizin için çok acil olsa bile, çok acil diye yazmayın | Sorununuz hakkında tam ve aydınlatıcı iletiler yazın | Amacınızı belirtin | Problemin belirtilerini tanımlayın, kendi tahminlerinizi değil | Sorunuz hakkında açık olun | Nezaket asla yaralamaz ve bazen oldukça yararlıdır | Boyut her şey değildir! | Kabalıkla ilgilenmek | Cevabı E-Posta ile istemeyin | İnsanlardan özel mesajla cevap vermelerini istemeyin | Eğer cevabı anlamadıysanız | Şayet bir cevap alamazsanız | Sorununuz çözüldükten sonra küçük bir not ile bildirin | Sorulmaması gereken türde sorular | İyi ve kötü sorular
Sorulara nasıl doğru düzgün cevap verilir