Delphi 3 и создание приложений баз данных


6.6.2. Свойство DisplayFormat


Свойство

property DisplayFormat: string;

применяется для форматирования при показе полей типа TDateField, TDateTimeField, TIntegerField, TSmallintField, TTimeField, TWordField.

Для форматирования полей типа TIntegerField, TSmallintField и TWordField может также применяться стандартная процедура procedure Str(X [: Width [: Decimals ]]; var S);

Для форматирования полей типа TDateField, TDateTimeField и TTimeField применяется функция function Date TimeToStr (Date Time: TDateTime): String;

Для форматирования полей типа TBCDField, TCurrencyField и TFloatField применяется функция function FloatToTextFmt(Buffer: PChar; Value: Extended:

Format: PChar): Integer;

Поддерживаются следующие спецификаторы форматов:

Спец-р

Что влечет

0

Число. Если незначащий разряд равен 0, показывать его.

#

Число. Если незначащий разряд равен 0, не показывать его.

Десятичная точка. Разделяет целую и дробную часть числа Принимается во внимание только первая точка, остальные игнорируются.

'

Разделитель тысяч. Каждая группа чисел из 3 разрядов в целой части отделяется от иных разрядов запятой.

'

Разделяет положительное, отрицательное и нулевое значение.

Е+

Научный формат действительных чисел

"XX' или 'XX'

Символы внутри двойных или одинарных парных кавычек не форматируются и выводятся как есть. Например, число 123.45 с форматом '#.# "рублей"' выведется как '123.5 рублей'

Примеры использования форматов.

Форматируемое число

987654.321

-987654.321

0.27

-0.27

0

не форматировано

987654.321

-987654.321

0.27

-0.27

0

0

987654

-987654

0

0

0

0.00

987654.32

-987654.32

0.27

0

0.00

#

987654

-987654

     

#.##

987654.32

-987654.32

.27

-.27

 

#,##0.00

987,654.32

-987,654.32

0.27

-0.27

0.00

#,##0.00; (#,##0.0)

987,654.32

(987,654.32)

0.27

(0.3)

0.00

#,##0.00;; Нолик

987,654.32

-987,654.32

0.27

-0.27

Нолик

О.ОООЕ+00

9.877Е+05

-9.877Е+0

2.700Е-01

-2.700E-01

0.000Е+00

#.###Е-0

9.877Е5

-9.877Е5

2.7Е-1

-2.7Е-1

0Е0

Пусть значение поля 3456.777. Тогда, если DisplayFormat := '#.##', то будет показано 3456.78.

ЗАМЕЧАНИЕ.

Формат показа поля может быть динамически переназначен во время выполнения. Например, для заполнения данной таблицы мы воспользовались компонентами Edit1 и Button1 и производили динамическую замену формата поля Table I Salary так:

procedure TForm1.Button1Click(Sender: TObject);

begin

Table1Salary.DisplayFormat := Edit1.Text;

end;

DisplayFormat

игнорируется, если определен обработчик для события OnGetText.

ЗАМЕЧАНИЕ.

В случае, если поле, требующее обязательного ввода в него значения (свойство Required = True), на момент запоминания в таблице БД (т.е. на момент начала выполнения метода Post) содержит пустое или нулевое значение, возбуждается исключение EDBEditError.




Начало  Назад  Вперед



Книжный магазин