Справочник функций и процедур Delphi: TFloatFormat

  Навигация по первой букве:

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z

  Навигация по категории:

Compiler directives, Directives, Keywords / Types, Variables, Constants / Functions, Procedures

  Реклама:

 

TFloatFormat
Тип
Форматы, используемые в функциях отображения чисел с плавающей запятой SysUtils unit
  type TFloatFormat = (ffGeneral, ffExponent, ffFixed, ffNumber, ffCurrency);

Google  
 
Описание
Тип TFloatFormat используется следующими SysUtils функциями:

CurrToStrF - для отображения значений валют
FloatToStrF - для отображения чисел с плавающей запятой
FloatToText - для форматирования к массиву

Возможные значения TFloatFormat:

ffGeneral

Определяет универсальное числовое форматирование, которое стремится сохранить результирующее значение как можно компактнее. Он удаляет конечные нули и десятичную точку, где возможно. Никакие разделители тысяч не показываются. Формат экспоненты используется, если мантисса является слишком большой для указанного значения Precision команды форматирования. В этом случае, значение Digits (0.. 4) определяет минимальное число показываемых цифр экспоненты. Символ десятичной точки определен переменной DecimalSeparator. ffExponent

Обычно называемый как Научный или Инженерный формат, экспонента отображается символом E следующая за числом. Запись E+15 означает 1015. Экспонента всегда имеет знак + или -. Этой экспоненте предшествует число, которое всегда имеет одну цифру перед десятичной точкой.

Например: 123.456 форматируется как 1.23456E+2; 0.00123 форматируется как 1.23E-3.

Используемый функцией параметр Precision дает число отображаемый цифр перед E, а параметр Digits дает число цифр (0..4) после E.

Символ десятичной точки определен переменной DecimalSeparator.

ffFixed

Этот формат также не использует никаких разделителей тысяч. Он отображает Precision цифр перед десятичной точкой, и Digits цифр после. Если слишком много цифр перед десятичной точкой, то вместо этого используется формат экспоненты.

Символ десятичной точки определен переменной DecimalSeparator.

ffNumber

То же самое, что и ffFixed, за исключением того, что используется разделитель тысяч. Они определены переменной ThousandSeparator.

ffCurrency

То же самое, что и ffNumber, но с добавлением символа (строки) денежной единицы, который определен переменной CurrencyString. Дополнительно, на форматирование влияют переменные CurrencyFormat и NegCurrFormat.
Похожие команды
CurrencyDecimals  Определяет число десятичных цифр в функции Format

CurrencyFormat  Определяет размещение строки валюты в функции показа валюты

CurrencyString  Строка валюты, используемая в функциях отображения валюты

CurrToStrF  Преобразует денежную величину в строку с форматированием

DecimalSeparator  Символ используемый для отображения десятичной точки

FloatToStrF  Преобразует значение с плавающей запятой в строку с форматированием

NegCurrFormat  Определяет отображение отрицательного количества форматированной валюты

ThousandSeparator  Символ, используемый для отображения разделителя тысяч

 
Пример кода : Иллюстрация 5 различных типов форматирования
var
  amount : Extended;

begin
  amount := 1234.56;

  // Отображение используя форматирование ffGeneral
  ShowMessage('General 4,0 = '+FloatToStrF(amount, ffGeneral, 4, 0));
  ShowMessage('General 6,0 = '+FloatToStrF(amount, ffGeneral, 6, 0));
  ShowMessage('General 6,2 = '+FloatToStrF(amount, ffGeneral, 6, 2));
  ShowMessage('General 3,2 = '+FloatToStrF(amount, ffGeneral, 3, 2));
  ShowMessage('');

  // Отображение используя форматирование ffExponent
  ShowMessage('Exponent 4,0 = '+FloatToStrF(amount, ffExponent, 4, 0));
  ShowMessage('Exponent 6,0 = '+FloatToStrF(amount, ffExponent, 6, 0));
  ShowMessage('Exponent 6,2 = '+FloatToStrF(amount, ffExponent, 6, 2));
  ShowMessage('Exponent 3,2 = '+FloatToStrF(amount, ffExponent, 3, 2));
  ShowMessage('');

  // Отображение используя форматирование ffFixed
  ShowMessage('Fixed 4,0 = '+FloatToStrF(amount, ffFixed, 4, 0));
  ShowMessage('Fixed 6,0 = '+FloatToStrF(amount, ffFixed, 6, 0));
  ShowMessage('Fixed 6,2 = '+FloatToStrF(amount, ffFixed, 6, 2));
  ShowMessage('Fixed 3,2 = '+FloatToStrF(amount, ffFixed, 3, 2));
  ShowMessage('');

  // Отображение используя форматирование ffNumber
  ShowMessage('Number 4,0 = '+FloatToStrF(amount, ffNumber, 4, 0));
  ShowMessage('Number 6,0 = '+FloatToStrF(amount, ffNumber, 6, 0));
  ShowMessage('Number 6,2 = '+FloatToStrF(amount, ffNumber, 6, 2));
  ShowMessage('Number 3,2 = '+FloatToStrF(amount, ffNumber, 3, 2));
  ShowMessage('');

  // Отображение используя форматирование ffCurrency
  ShowMessage('Currency 4,0 = '+FloatToStrF(amount, ffCurrency, 4, 0));
  ShowMessage('Currency 6,0 = '+FloatToStrF(amount, ffCurrency, 6, 0));
  ShowMessage('Currency 6,2 = '+FloatToStrF(amount, ffCurrency, 6, 2));
  ShowMessage('Currency 3,2 = '+FloatToStrF(amount, ffCurrency, 3, 2));
end;
General 4,0 = 1235
General 6,0 = 1234.56
General 6,2 = 1234.56
General 3,2 = 1.23E03

Exponent 4,0 = 1.235E+3
Exponent 6,0 = 1.23456E+3
Exponent 6,2 = 1.23456E+03
Exponent 3,2 = 1.23E+03

Fixed 4,0 = 1235
Fixed 6,0 = 1235
Fixed 6,2 = 1234.56
Fixed 3,2 = 1.23E03

Number 4,0 = 1,235
Number 6,0 = 1,235
Number 6,2 = 1,234.56
Number 3,2 = 1.23E03

Currency 4,0 = ?1,235
Currency 6,0 = ?1,235
Currency 6,2 = ?1,234.56
Currency 3,2 = 1.23E03
 


Copyright © 2004-2016 Delphi Sources (источник – "DelphiBasics.ru")
 


Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook