Как программно форматировать Memo

отредактировано 18:48 Раздел: FastReport 4.0
Доброго времени суток.
Пользовался поиском, но ничего не нашел, вот решил создать тему.
Подскажите пожалуйста, как программно из Delphi присвоить формат для компонента memo в отчете.
Т.е. суть в следующем, после определенных манипуляций, переменной X в программе присваивается некое значение формата Float. Затем значение этой меременной присваивается компоненту memo следующим образом:
Memo1.Memo.Add(floattostr(x));
Но после вывода отчета на экран, форматирование не работает. Т.е. нужно к примеру чтобы показывалось число вида 3 327,50, а в итоге показывается 3327,5, как все же сделать форматирование?
Заранее благодарен.

Комментарии

  • отредактировано 18:48
    Кстати, небольшое дополнение.
    Пробовал присваивать следующим образом:
    Memo1.Memo.Add('['+floattostr(first_ost)+']');
    
    с форматированием все хорошо, но по непонятной причине, причем не всегда, а только в некоторых случаях, выскакивает ошибка: "Memo1: Ошибка в выражении '53,2': ';' expected"
  • отредактировано 18:48
    Неужели никто не может подсказать? :)
  • Stalker4Stalker4 123
    отредактировано 18:48
    Vit@L написал: »
    Подскажите пожалуйста, как программно из Delphi присвоить формат для компонента memo в отчете.
    Для программного форматирования в мемке используй функции Format или FormatFloat.
  • отредактировано 18:48
    А можно примерчик пожалуйста?
  • gpigpi
    отредактировано 18:48
    procedure Memo4OnBeforePrint(Sender: TfrxComponent);
    begin
    if Engine.FinalPass then
    Memo4.Text := 'Sum: ' + Format('%2.2m',[Get(<Sales."Company">)]);
    end;
  • отредактировано 18:48
    gpi, а если у меня этой мемке присваивается значения переменной х из кода Delphi, как тогда быть? И все же можно пример с использованием функции Format или FormatFloat?
  • отредактировано 18:48
    Кстати, я понял почему появляется ошибка "Memo1: Ошибка в выражении '53,2': ';' expected". при таком коде:
    Memo1.Memo.Add('['+floattostr(х)+']');
    
    Она появляется тогда, когда дробная часть числа больше нуля. Т.е. к примеру, если будет 12,00 то все будет нормально, а если 12,10 то вылетает ошибка. Почему так?
  • отредактировано 18:48
    А чем плох:
    FloatToStrF(SomeVar,ffFixed,8,2)

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.