Высота MemoView

отредактировано 03:27 Раздел: FastReport 3.0
Приветствую!

Есть Memo фиксированного размера (Stretchable=false). Нужно:
а) если текст в него помещается, то напечатать текст;
б) если текст не помещается, то напечатать многоточие.

CalcHeight() всегда возвращает значение не превышающее выставленной высоты мемки.

Как решить задачу? Помогите пожалуйста!

Комментарии

  • отредактировано 03:27
    procedure Memo1OnAfterData(Sender: TfrxComponent);
    begin
    Memo1.Height := Memo1.CalcHeight;
    end;

    растягивает мемку до актуальной высоты.
  • отредактировано 03:27
    У меня схожая проблема:
    Если в результате выполнения запроса данные в мемо не поступают, то надо заполнить поле мемо нижним подчеркиванием на всю ширину страницы. Это для того что бы в распичатанный документ можно было записать данные ручкой.
  • отредактировано 03:27
    AlexTZ написал:
    procedure Memo1OnAfterData(Sender: TfrxComponent);
    begin
      Memo1.Height := Memo1.CalcHeight;
    end;

    растягивает мемку до актуальной высоты.
    Новости с фронта. ;)
    Оказалось, что CalcHeight неправильно работает когда включено "перетекание" FlowTo. Тогда он возвращает величину меньше либо равную высоте основной мемки.
    У меня же бланк выглядит как:
    Ф.И.О. _____________________ (Memo1)
    ____________________________ (Memo2)
    ____________________________ (Memo2)
    
    т.е. начиная со второй строки начинается вторая мемка (для которой CalcHeight=0).

    Так что вопрос остается. Как побороть?

    PS. Двумя мемками пришлось делать, т.к. расчерченные графы должны быть в любом случае...
  • отредактировано 03:27
    Ну и? Мой вопрос решается или считается уже решенным?
  • отредактировано 03:27
    Работает в событии Band.OnAfterCalcHeight (когда данные уже занесены в мемки). В данном случае Memo2 - это мемка, которая указана в качестве FlowTo.

    procedure MasterData1OnAfterCalcHeight(Sender: TfrxComponent);
    begin
    Memo2.Height := Memo2.CalcHeight;
    end;
  • отредактировано 03:27
    Большущее спасибо!

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

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