delphide component nasıl yazılır?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
delphide component nasıl yazılır?
worddeki yazım ve dilbilgisi gibi çalışan bi component yazmam gerekiyo.Bu benim dönem projem.
Bu componente bi nevi doğrulayıcı diyebiliriz.Bu componet veri tabanına veri aktaran bir program üzerinde çalışacak.Doğrulayıcı veri tabanı olacak...
Mesela ad:asla yazdığım zaman bunu aslı olarak düzeltecek....
yani var olan isimleri içinde saklayacak girilen isimleri doğruysa aktaracak yanlışsa düzeltip öyle aktaracak....
Bu düzeltmeler soyad mail gibi diğer alanlarda da uygulanacak...
tüm bu işlemler Editin change olayında yazılacak
Yardımlarınızı bekliyorum...
Bu componente bi nevi doğrulayıcı diyebiliriz.Bu componet veri tabanına veri aktaran bir program üzerinde çalışacak.Doğrulayıcı veri tabanı olacak...
Mesela ad:asla yazdığım zaman bunu aslı olarak düzeltecek....
yani var olan isimleri içinde saklayacak girilen isimleri doğruysa aktaracak yanlışsa düzeltip öyle aktaracak....
Bu düzeltmeler soyad mail gibi diğer alanlarda da uygulanacak...
tüm bu işlemler Editin change olayında yazılacak
Yardımlarınızı bekliyorum...
yırtık rahibe
Component nasıl yazıcam diye dert etme, hiç sorun değil. Sen önce bu bahsettiğin işi yapan kodunu yaz. bunu bir unit olarak yap. Bu unit teki bir değişkene düzeltilmesi gereken stringi gönder, parametre olarakta olabilir. Burda bir tavsiyemde kelime listesini bir text dosyadan okutursan isteyen istediği kelimeyi ekler yada çıkartır. Ayrıca bu dışarıdan okunacak listenin formatını "ad=asla" şeklinde verirsen, bunu loadfromfile ile okuyum findvalue gibi functionları kullanabilirsin. Böylece kod yazma yükünden ve hatalardan kurtulmuş olursun.
Edit lerin Onchange yerine OnExit ler daha mantıklı, sadece bu event lere yazdığın unit teki işlemi tetikliycek kodu yazıcaksın.
buraya kadar sorunsuz hallettiysen, yazdığın unit i sadece bir class haline getireceksin ki buda hiç karmaşık değil. Open source component ler indir bol bol. size ı küçük ve basit olanları incele. aralarındaki ortak noktaları göreceksin.
Takıldığın yerlerde Önce arama yapıcaksın, eğer hala çözemediysende uzun ve anlaşılır cümlelerle buraya soru olarak yazabilirsin
Kolay gele
Edit lerin Onchange yerine OnExit ler daha mantıklı, sadece bu event lere yazdığın unit teki işlemi tetikliycek kodu yazıcaksın.
buraya kadar sorunsuz hallettiysen, yazdığın unit i sadece bir class haline getireceksin ki buda hiç karmaşık değil. Open source component ler indir bol bol. size ı küçük ve basit olanları incele. aralarındaki ortak noktaları göreceksin.
Takıldığın yerlerde Önce arama yapıcaksın, eğer hala çözemediysende uzun ve anlaşılır cümlelerle buraya soru olarak yazabilirsin
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 !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
verilen örnek bence yanlış asla türkçede varolan bir kelime bence mantık yürütülürken türkçe kelime mantığı üzerinde oturup düşünmek lazım... (asla adında bir arkadaşım vardı ) 
Örnek olarak şunlar dikkate alınabilir.
1. karakter dizisi mantıklımı anneme - annneme türkçede 3 tane sessiz harf yan yana gelmez bu tarz bir durumda karakterin bir tanesi silenebilir.
2. aynı şekilde sesli harf kontrolleride yapılabilir.
3. yazım yapılırken Cep telefonlarındaki mantık kullanılabilir. yani karakterler tuşlandıkca datadan en yakın kelimeler getirilebilir...
vb...
Kolay Gelsin...

Örnek olarak şunlar dikkate alınabilir.
1. karakter dizisi mantıklımı anneme - annneme türkçede 3 tane sessiz harf yan yana gelmez bu tarz bir durumda karakterin bir tanesi silenebilir.
2. aynı şekilde sesli harf kontrolleride yapılabilir.
3. yazım yapılırken Cep telefonlarındaki mantık kullanılabilir. yani karakterler tuşlandıkca datadan en yakın kelimeler getirilebilir...
vb...
Kolay Gelsin...
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Merhaba;
Zor bir ödev almışsınız
Bu doğrulamayı arkadaşlarında dediği gibi OnExit te yapmanız gerekir. Düşünürseniz OnChange de çalışmaz. Sizin örneğinizde "Aslı" için "A" yazdığınızda doğrulama yapmaya kalkacak sonuç ...
Bu doğrulamayı sözlük dosyasından yapmak en güzeli sizinde istediğiniz bu öyle belirtmişsiniz. Yoksa harf bazında Türkçe dilbilgisi özellikleri ile doğrulama pek mümkün değil. Hiç bir dilin genel geçer kuralları kati değildir. (Yani pek çok istisnaları vardır.)
Burada yapmanız gereken doğrulama; girilen kelimeye en uygun pattern (doku) e uygun kelimeyi veritabanından bulmak ve Edit e yazdırmak.
Sorun kelimeye en yakın pattern i bulacak kodu yazmakta. Ve sonuçta bir den fazla ihtimalle karşılaştığınızda nasıl bir seçim yapacağınızda bu olasılıksal bir sonuç olacaktır. Yani kod (aslında algoritma) birazcık karışık olacaktır. Fakat örnekleri var. Babylon sözlükte "Spelling Alternatives" özelliği buna benzer bir biçimde çalışıyor (birden fazla sonuç üretebiliyor).
Ne diyeyim kolay gelsin.
Zor bir ödev almışsınız

Bu doğrulamayı arkadaşlarında dediği gibi OnExit te yapmanız gerekir. Düşünürseniz OnChange de çalışmaz. Sizin örneğinizde "Aslı" için "A" yazdığınızda doğrulama yapmaya kalkacak sonuç ...
Bu doğrulamayı sözlük dosyasından yapmak en güzeli sizinde istediğiniz bu öyle belirtmişsiniz. Yoksa harf bazında Türkçe dilbilgisi özellikleri ile doğrulama pek mümkün değil. Hiç bir dilin genel geçer kuralları kati değildir. (Yani pek çok istisnaları vardır.)
Burada yapmanız gereken doğrulama; girilen kelimeye en uygun pattern (doku) e uygun kelimeyi veritabanından bulmak ve Edit e yazdırmak.
Sorun kelimeye en yakın pattern i bulacak kodu yazmakta. Ve sonuçta bir den fazla ihtimalle karşılaştığınızda nasıl bir seçim yapacağınızda bu olasılıksal bir sonuç olacaktır. Yani kod (aslında algoritma) birazcık karışık olacaktır. Fakat örnekleri var. Babylon sözlükte "Spelling Alternatives" özelliği buna benzer bir biçimde çalışıyor (birden fazla sonuç üretebiliyor).
Ne diyeyim kolay gelsin.
Türkçe imla kontrolü için Zemberek projesini duymuş muydunuz? Dilbilgisi özellikleri ve sözlük yardımıyla gayet güzel iş başarıyor. Java ile yazılmış ve açık kaynak kodlu bir proje.poshet303 yazdı:Bu doğrulamayı sözlük dosyasından yapmak en güzeli sizinde istediğiniz bu öyle belirtmişsiniz. Yoksa harf bazında Türkçe dilbilgisi özellikleri ile doğrulama pek mümkün değil.
https://zemberek.dev.java.net/
- sadettinpolat
- Moderator
- Mesajlar: 2131
- Kayıt: 07 Ara 2003 02:51
- Konum: Ankara
- İletişim:
artvinhusonet yazdı: 1. karakter dizisi mantıklımı anneme - annneme türkçede 3 tane sessiz harf yan yana gelmez bu tarz bir durumda karakterin bir tanesi silenebilir.

aslında onerme dogru. turkcede 3 sesli harf yanyana gelmez lakin gunumuz turkcesinde 3 sesli harfin yanyana geldigi kelimeler mevcut.
en iyi cozum @coderlord' da belirttigi gibi zemberek projesini inclemek...
not: yanlis hatirlamiyorsam bu tip bir delphi bileseni vardi.
Evet zemberek projesinden haberim var online sürümünü denemiştim.Türkçe imla kontrolü için Zemberek projesini duymuş muydunuz? Dilbilgisi özellikleri ve sözlük yardımıyla gayet güzel iş başarıyor. Java ile yazılmış ve açık kaynak kodlu bir proje.
Sizinde belirttiğiniz gibi zemberek te sözlük dosyasıyla çalışıyor, dilbilgisi bunun üzerine inşa edilmiş.
Hatta sözlük konusunda abartmışlar denebilir verdikleri bilgiye göre
Su anda sistemde 23 binden fazla siniflandirilmis normal kelime koku ve 7000 civarinda ozel kisi adi yer aliyor.
Kısacası sözlük olmadan olmuyor.
Zemberek projesini incelemek iyi fikir de kolay iş değil. 1999 dan buyana (ara verilmiş de olsa) bir den fazla kişinin görev aldığı uzun soluklu (ve halen tamamlanmamış-aslında bu göreceli bir şey böyle bir proje hiç bir zaman tamamlanamayabilir, daha önce bahsettiğim dil istisnaları yüzünden ) bir projeyi incelerim diyen varmı bilemiyorum.
Uygulanabilir pratik bir şeyler önermeli.
Kolay gelsin