| 
| 
 | Вопрос # 5 052/ вопрос открыт / | 
 |  Здравствуйте, уважаемые эксперты!Вопрос такой: как сменить знак разделителя целой и дробной части числа денежной единицы?
 Попытался использовать функцию DecimalSeparator, но она меняет знак разделителя для всех дробных чисел.
 т.е. нужно выводить простые дробные числа в формате ххх,х
 а денежные в формате ххх-ххр. Для вывода денежной единицы использую FloatToStrF(string,ffcurrency,8,2)
 
|  |   Вопрос задал: Чеботок (статус: Посетитель)Вопрос отправлен: 26 февраля 2011, 11:50
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: min@y™ Самое простое - написать собственную функцию, в которой творить всё, что угодно.Второй вариант - присмотреться к функции FloatToStrF(), ведь на самом деле их 2 штуки:
 
 function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string; overload;
function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer; const FormatSettings:
TFormatSettings): string; overload;Обрати внимание на параметр FormatSettings: TFormatSettings: 
 type
  TFormatSettings = record
    CurrencyFormat: Byte;
    NegCurrFormat: Byte;
    ThousandSeparator: Char;
    DecimalSeparator: Char;
    CurrencyDecimals: Byte;
    DateSeparator: Char;
    TimeSeparator: Char;
    ListSeparator: Char;
    CurrencyString: string;
    ShortDateFormat: string;
    LongDateFormat: string;
    TimeAMString: string;
    TimePMString: string;
    ShortTimeFormat: string;
    LongTimeFormat: string;
    ShortMonthNames: array[1..12] of string;
    LongMonthNames: array[1..12] of string;
    ShortDayNames: array[1..7] of string;
    LongDayNames: array[1..7] of string;
    TwoDigitYearCenturyWindow: Word;
  end;Что-то мне подсказывает, что этого вполне достаточно для удовлетворения всех твоих нужд.
|  | Ответ отправил: min@y™ (статус: Доктор наук)Время отправки: 26 февраля 2011, 12:02
 
 |  
 Мини-форум вопросаМини-форум пуст. Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |