1
我只是想將Delphi 2007應用程序轉換爲Delphi 10.在2007版本的軟件中,我使用了一個常量的TFormatSettings。由於TFormatSettings類型在兩者之間發生了變化,我遇到了以下問題: 如何定義TFormatSettings常量?我試過如下:如何定義TFormatSettings常量(德爾福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'被聲明爲一個記錄的動態數組,我不知道有什麼方法可以在一個常量記錄中聲明它。 –