Delphi справочник - Форум программистов - Навигация  
 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      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  


Основы Delphi
FormatCurr
Функция
Богатое форматирование значений валюты в строку SysUtils unit
  
1 function FormatCurr ( const Formatting : string; Value : Currency ) : string;

2 function FormatCurr ( const Formatting : string; Value : Currency; FormatSettings : TFormatSettings ) : string;
Описание
Функция FormatCurr обеспечивает богатое Форматирование Значения (Value) валюты в строку.

Форматируемая строка может содержать соединение текста свободного формата и управляющих символов:

0: Вызывает отображение цифр или 0
#: Дополнительное цифровое отображение
, : Вызывает отображение тысяч
. : Вызывает отображение десятичных чисел
E+: Вызывает отображение знаковой экспоненты
E-: Дополнительное отображение знака экспоненты
; : Разделитель положительных, отрицательных и нулевых значений

Их лучше всего понять посмотрев на типовой код.

Версия 2 этой функции - для использования в пределах потоков. Вы заполняете запись FormatSettings перед вызовом запроса. Она получает локальную копию глобальной форматирующей переменной, которая делает вашу подпрограмму потоко безопасной.
Похожие команды
CurrToStrF  Преобразует денежную величину в строку с форматированием

Format  Богатое форматирование чисел и текста в строке

FormatDateTime  Богатое форматирование переменной TDateTime в строку

FormatFloat  Богатое форматирование числа с плавающей запятой в строку

StrToCurr  Преобразует числовую строку в денежное выражение

 
Пример кода : Показ всех форматируемых типов данных
var
  curr : Currency;

begin
  // Установка нашего числа с плавающей запятой
  curr := 1234.567;

  // Отображение типового значения, используя все варианты формата

  // Округление десятичного значения
  ShowMessage('##### : '+FormatCurr('#####', curr));
  ShowMessage('00000 : '+FormatCurr('00000', curr));
  ShowMessage('0     : '+FormatCurr('0'    , curr));
  ShowMessage('#,##0 : '+FormatCurr('#,##0', curr));
  ShowMessage(',0    : '+FormatCurr(',0'   , curr));
  ShowMessage('');

  // Включение десятичного значения
  ShowMessage('0.#### : '+FormatCurr('0.####', curr));
  ShowMessage('0.0000 : '+FormatCurr('0.0000', curr));
  ShowMessage('');

  // Научный формат
  ShowMessage('0.0000000E+00 : '+FormatCurr('0.0000000E+00', curr));
  ShowMessage('0.0000000E-00 : '+FormatCurr('0.0000000E-00', curr));
  ShowMessage('#.#######E-## : '+FormatCurr('#.#######E-##', curr));
  ShowMessage('');

  // Включение текст свободного формата
  ShowMessage('"Value = "0.0 : '+FormatCurr('"Value = "0.0', curr));
  ShowMessage('');

  // Различное форматирование для отрицательных чисел
  curr := 1234.567;
  ShowMessage('0.0 : '+FormatCurr('0.0'              , -curr));
  ShowMessage('0.0 "CR";0.0 "DB" : '+
              FormatCurr('0.0 "CR";0.0 "DB"', -curr));
  ShowMessage('0.0 "CR";0.0 "DB" : '+
              FormatCurr('0.0 "CR";0.0 "DB"', curr));
  ShowMessage('');

  // Различный формат для нулевого значения
  curr := 0.0;
  ShowMessage('0.0 : '+FormatCurr('0.0' , curr));
  ShowMessage('0.0;-0.0;"Nothing" : '+
              FormatCurr('0.0;-0.0;"Nothing"', curr));
end;

##### : 1235
00000 : 01235
0 : 1235
#,##0 : 1,235
,0 : 1,235

0.#### : 1234.567
0.0000 : 1234.5670

0.0000000E+00 : 1.2345670E+03
0.0000000E-00 : 1.2345670E03
#.#######E-## : 1.234567E3

"Value = " : Value = 1234.6

0.0 : -1234.6
0.0 "CR";0.0 "DB" : 1234.6 DB
0.0 "CR";0.0 "DB" : 1234.6 CR

0.0 : 0.0
0.0;-0.0;"Nothing" : Nothing
 



© Форум Delphi   |  Блог программистов   |  Создание и продвижение сайтов - "Веб сателлит"  |  Ссылки   |  Английская версия