Я просто пытаюсь преобразовать приложение Delphi 2007 в Delphi 10. В версии программного обеспечения 2007 года я использую константу TFormatSettings. Поскольку тип TFormatSettings изменился где-то между ними, я столкнулся со следующей проблемой: Как определить константу TFormatSettings? Я попытался следующие:Как определить константу TFormatSettings (Delphi 10)
XML_FormatSettings : TFormatSettings = (
CurrencyString: '€';
CurrencyFormat: 3;
CurrencyDecimals: 2;
DateSeparator: '-';
TimeSeparator: ':';
ListSeparator: ';';
ShortDateFormat: 'yyyy-MM-dd';
LongDateFormat: 'dddd, d. MMMM yyyy';
TimeAMString: '';
TimePMString: '';
ShortTimeFormat: 'hh:nn:ss';
LongTimeFormat: 'hh:nn:ss';
ShortMonthNames: ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
LongMonthNames: ('January', 'February', 'March', 'April', 'May', 'June', 'July', 'Augut', 'September', 'October', 'November', 'December');
ShortDayNames: ('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');
LongDayNames: ('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
EraInfo: (
EraName: ''; // <= Error here
EraOffset: 0;
EraStart: 0;
EraEnd: 0;);
ThousandSeparator: ',';
DecimalSeparator: '.';
TwoDigitYearCenturyWindow: 0;
NegCurrFormat: 8;
NormalizedLocaleName: '';);
Это дает следующее сообщение об ошибке: необъявленный идентификатор: «» EraName
я попробовал несколько других подходов, но не нашел решения. Возможно ли вообще определить константу TFormatSettings? Как вы обрабатываете тип записи, определенный и используемый в типе записи при объявлении константы?
Вы можете предопределить определенный язык, например 'FS: = TFormatSettings.Create ('en-US');' который подходит (или изменяет то, что необходимо). –
Спасибо, но я хотел бы определить константу, а не переменную. Это было бы моим последним спасением (вроде). –
Я думаю, вы не можете определить его как константу. 'EraInfo' объявлен как динамический массив записи, и я не знаю, каким образом объявить это в постоянной записи. –