Merhabalar,
Benim bildiğim kadarı ile FormatFloat kullandığımızda Decimal ve ya Float değerlerini Windows Format ayarlarından alıp bize gösteriyor.
Windows'ta Format ayarlarımız Türkiye olduğunda virgül, (,) İngilizce olduğunda ise nokta(.) ile ayırım yapmakta.
Mes: Türkçe: 12,35 - İngilizce: 12.35 şeklinde.
Peki biz bu formatı kendimize göre ayarlamamız mümkünmüdür acaba?
Windows'umuz hangi format ayarlarını kullanırsa kullansın, ama biz sadece 12.35 gibi nasıl çeke biliriz?
Yardımlarınız için önceden teşekkür ederim..
Kolay gelsin..
FormatFloat kendimize göre ayarlamak.
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: FormatFloat kendimize göre ayarlamak.
uses kısmına
System.SysUtils ekle
Yukarıdaki kod sadece senin program için geçerlidir.
Bilgisayarın ayarlarını değiştirmek istersen
System.SysUtils ekle
Kod: Tümünü seç
if (formatsettings.ThousandSeparator <> '.') then showmessage('Bin ayraçı . olmalı (Değiştiriliyor)');
formatsettings.ThousandSeparator := '.';
if (formatsettings.DecimalSeparator <> ',') then showmessage('Ondalık ayraçı , olmalı (Değiştiriliyor)');
Bilgisayarın ayarlarını değiştirmek istersen
Kod: Tümünü seç
Procedure Bolgesel_Ayarla;
var
r: tregistry;
Begin
r := tregistry.Create;
try
r.RootKey := HKEY_CURRENT_USER;
if r.OpenKey('Control Panel\International', true) then
Begin
r.WriteString('sDate', '.');
r.WriteString('sShortDate', 'dd.MM.yyyy');
r.WriteString('sDecimal', ','); // sayı
r.WriteString('sThousand', '.'); // sayı
r.WriteString('sMonThousandSep', '.'); // para birimi
r.WriteString('sMonDecimalSep', ','); // para birimi
r.closekey;
End;
finally
r.Free;
end;
End;
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Re: FormatFloat kendimize göre ayarlamak.
Cevabınız için çok teşekkür ederim, Allah razı olsun.
Kolay gelsin..
Kolay gelsin..