KeyPress ile para basamaklarına ayırmak...

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
comlekciler
Üye
Mesajlar: 58
Kayıt: 17 Nis 2006 12:35

KeyPress ile para basamaklarına ayırmak...

Mesaj gönderen comlekciler »

selam arkadaşlar.

Programımda girilen para miktarlarını 00.000,00YTL formatında girmek istiyorum. Ve bu formatın sınırı olmamalı yani ne girilirse girilsin 0,00YTL ,0.000,00YTL...,0.000.000,00YTL şekillerinde yazabilmelidir. Windowsun hesap makinesinde basamaklamayı seçerseniz demek istediğimi daha rahat anlayabilirsiniz. O tarzda (hatta aynısı) olacak.
Onun için KeyPress olayına nasıl bir kod yazmalıyım?

Forumda aradım ve böyle bir koda rastlamadım. İlk harfi büyük yapma gibi şeylerle uydurmaya çalıştım ama beceremedim.

MaskEdit tarzı şeylerle yapmak istemiyorum çünkü belirli bir maske sabit oluyor. Bu yüzdende eğer adam 11.111,00YTL gibi bir şey girdiği zaman başına 0 koymak zorunda kalıyor. Yani 011.111,00YTL oluyor.

Bir de bu bilgi veritabanına decimal olarak kaydediliyor. Yani bilgi geri alındığı zaman o edit içinde yine aynı formatta görünmesi gerekiyor. Sormak istediğim acaba KeyPress olayına değilde OnChange olayına mı yazmalıyım.

Yardımlarınızı bekliyorum.

NOT: Yine uzun yazdım ama daha iyi anlatabilmek için her seferinde uzun oluyor o yüzden kusura bakmayın... :oops:
En son comlekciler tarafından 30 May 2006 04:07 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
"Bilgisizlerin geçtikleri mevkiye yaptığı fenalığı, yüzlerce aslan bir araya gelse yapamaz" MEVLANA
poshet303
Üye
Mesajlar: 235
Kayıt: 26 Eki 2005 01:15

Mesaj gönderen poshet303 »

Forumda bulamamış olmanız enteresan.

HusEdit diye aratsak.

Kod: Tümünü seç

function FormatCurr(const Format: string; Value: Currency): string; overload;
function FormatCurr(const Format: string; Value: Currency; const FormatSettings: TFormatSettings): string; overload;
Bu fonksiyonları incelesek.

RXLib (yada Jedi) VCL de TcurrEdit e baksak.

Ayrıca TCurrencyField diye bir sınıfımız var. Veri tabanına kayıt ederken ve okurken girilen sayıyı biçimlendiriyor.


vb.
Kullanıcı avatarı
comlekciler
Üye
Mesajlar: 58
Kayıt: 17 Nis 2006 12:35

Mesaj gönderen comlekciler »

cevabın için teşekkür ederim...

Ama bir şey sormak istiyorum, ben forumda ararken acaba basamaklama, edit formatlama gibi olabilecek ve bu iş için kullanılabilecek tüm kelimelere göre ve yeni mesajlardan ziyade eski mesajlarda bu kullanılmıştır mantığı ile de sondan başlıyorum. Ve sizde husedit falan diyorsunuz. Şimdi kendinizi benim yerime koyun. Böyle birşeyi zaten bilmiyorsunuz ve araştırırken de acaba nasıl tahmin edipte husedit diye arama yaptırırsınız yani nasıl bir mantık kurarsınız basamaklama ile husedit arasında nasıl bir ilişki var ki bu şekilde arama yaptırabiliriz.

Birde foruma üyeliğimden beri gördüğüm bir şey var eskiden aynı şeyler tekrar tekrar konuşulmuş ve forumun ilk yıllarında herkes aynı sorulara sıkılmadan cevaplar yazmış ama şimdi yeni üyeler bir şey sorduğu zaman lütfen arama yapalım yada cevap yazarken bu konu daha öne konuşuldu gibi şeyler yazılıyor. Sizde takdir edersiniz ki arama sonuçlerında 3-5 sayfa değil artık yüzlerce sayfa çıkıyor. Ve yine takdir edersiniz ki kimse her konuyu tek tek okuyamaz sadece tüm başlıkları inceler ve en uygun olanlarını araştırır (özellikle de bir işde çalışan kişilerin çok zamanı yoktur).

Demek istediğim artık herkese böyle yazılardan ziyade cevap ver(e)miyorsak bile daha önce konuşulduğunu bildiğiniz yerlerin linklerini yada hiç birşey yap(a)masak bile arama yapalım diyeceğimize şu kelimelerle bir aratalım daha önce konuşulmuştu desek daha faydalı olacağı görüşündeyim.

Belki adminlerim şu anda bana kızacaklar. Ama kimseye kızmak yada kırmak gibi bir amacım yok sadece ciddiye alınmak istiyorum ve sanki hiç arama yapmamış direk hazıra konmak istiyor zannından kurtulmak istiyorum.

Herkese tekrar teşekkürler... :cry:
"Bilgisizlerin geçtikleri mevkiye yaptığı fenalığı, yüzlerce aslan bir araya gelse yapamaz" MEVLANA
Cevapla