- Код: Выделить всё
var
LeoFormatSettings : TFormatSettings = (
CurrencyFormat: 3;
NegCurrFormat: 8;
ThousandSeparator: ' ';
DecimalSeparator: '.';
CurrencyDecimals: 2;
DateSeparator: '.';
TimeSeparator: ':';
ListSeparator: ',';
CurrencyString: 'р.';
ShortDateFormat: 'dd/mm/yyyy';
LongDateFormat: 'dd" "mmmm" "yyyy';
TimeAMString: 'AM';
TimePMString: 'PM';
ShortTimeFormat: 'hh:nn';
LongTimeFormat: 'hh:nn:ss';
ShortMonthNames: ('Янв','Фев','Март','Апр','Май','Июнь',
'Июль','Авг','Сент','Окт','Нояб','Дек');
LongMonthNames: ('Январь','Февраль','Март','Апрель','Май','Июнь',
'Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь');
ShortDayNames: ('Вс','Пн','Вт','Ср','Чт','Пт','Сб');
LongDayNames: ('Воскресенье','Понедельник','Вторник','Среда','Четверг',
'Пятница','Суббота');
TwoDigitYearCenturyWindow: 50;
);
а ещё есть вот такой:
- Код: Выделить всё
procedure TForm1.Edit2EditingDone(Sender: TObject);
var d:double;
begin
d:=StrToFloat(Edit2.Text,LeoFormatSettings); // попытка перевести значение из форматированной строки обратно в double
d:=d+0.01; // изобразим деятельность
Edit2.Text:=Format('%m',[d],LeoFormatSettings);
end;
Должно ли работать обратное приведение типа, из строки отформатированной с помощью Format('%m',[d],LeoFormatSettings) или написанной в таком же формате, в double ? Или не должно? Есть ли в природе функция-антипод Format('%m',[d],LeoFormatSettings)?