Arkadaşlar,
böyle bir numara "0,000500" girmeye çalıştığımda "5E-5" işliyor field alanı float.
teşekkürler
yuvarlama sorunu
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 839
- Kayıt: 03 Eki 2007 02:00
- fesiharslan
- Üye
- Mesajlar: 591
- Kayıt: 20 Eki 2006 11:37
- Konum: Erzurum
- İletişim:
Re: yuvarlama sorunu
Merhaba;
Float tipini FloatToStrF fonksiyonu ile istediğiniz gibi formatlayabilirsiniz.
Ekran Çıktısı:

İyi çalışmalar
Float tipini FloatToStrF fonksiyonu ile istediğiniz gibi formatlayabilirsiniz.
Kod: Tümünü seç
var
BirSayi: real;
begin
Memo1.Lines.Clear;
BirSayi := 0.000500;
with Memo1.Lines do
begin
Add('TFloatFormat.ffFixed : ' + FloatToStrF(BirSayi,
TFloatFormat.ffFixed, 12, 6));
Add('TFloatFormat.ffGeneral : ' + FloatToStrF(BirSayi,
TFloatFormat.ffGeneral, 12, 6));
Add('TFloatFormat.ffExponent : ' + FloatToStrF(BirSayi,
TFloatFormat.ffExponent, 12, 6));
Add('TFloatFormat.ffNumber : ' + FloatToStrF(BirSayi,
TFloatFormat.ffNumber, 12, 6));
Add('TFloatFormat.ffCurrency : ' + FloatToStrF(BirSayi,
TFloatFormat.ffCurrency, 12, 6));
end;
end;

İyi çalışmalar
-
- Üye
- Mesajlar: 839
- Kayıt: 03 Eki 2007 02:00
Re: yuvarlama sorunu
Cevabınız için teşekkür ederim fakat anlamadım bunu ?
nere ekleyeceğim grinde mi ?

- fesiharslan
- Üye
- Mesajlar: 591
- Kayıt: 20 Eki 2006 11:37
- Konum: Erzurum
- İletişim:
Re: yuvarlama sorunu
Bu sadece bir örnekti. Mantık olarak veriyi formatlamak gerekiyor. Grid veya herhangi bir nesnenin Display veya DisplayFormat özelikleri vardır. Bu özellikleri kullanarak verinizi maskeleyebilir veya formatlayabilirsiniz.
Gridin ilgili sütununun veya Field'ın DisplayFormat özelliğine 0.000000 yazarak, aynı sonucu elde edebilirsiniz.
Örnek bir uygulama;
Veri Tabanı:

Design Time ekran görüntüsü:

Run Time ekran görüntüsü:

Gridin ilgili sütununun veya Field'ın DisplayFormat özelliğine 0.000000 yazarak, aynı sonucu elde edebilirsiniz.
Örnek bir uygulama;
Veri Tabanı:

Design Time ekran görüntüsü:

Run Time ekran görüntüsü:

Kod: Tümünü seç
procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
begin
if Field.DisplayName = 'BIR_SAYI' then
TFloatField(Field).DisplayFormat := '#,##0.000000';
end;