frxReport1.PrepareReport(); ShowMessage(IntToStr(frxReport1.PreviewPages.Count));
var MyLine: Integer; procedure Memo1OnBeforePrint(Sender: TfrxComponent); begin if Engine.FreeSpace < MasterData1.Height then MyLine := 1 else MyLine := MyLine + 1; end; begin MyLine := 0; end.
procedure MasterData1OnAfterCalcHeight(Sender: TfrxComponent); var Y: Extended; begin if MasterData1.Height > Engine.FreeSpace then begin OverLay1.Height := Engine.FreeSpace; Memo1.Height := Engine.FreeSpace; Reprinit := True; end else begin OverLay1.Height := MasterData1.Height; Memo1.Height := MasterData1.Height; Y := Engine.CurY; end; Y := Engine.CurY; OverLay1.Visible := True; Engine.ShowBand(OverLay1); OverLay1.Visible := False; Engine.CurY := Y; end; procedure MasterData1OnBeforePrint(Sender: TfrxComponent); var Y: Extended; tmpSaveText: String; begin if Reprinit then begin OverLay1.Height := Engine.CurY; Memo1.Height := Engine.CurY; tmpSaveText := Memo1.Text; Memo1.Text := SaveText; Y := Engine.CurY; Engine.CurY := 0; OverLay1.Visible := True; Engine.ShowBand(OverLay1); OverLay1.Visible := False; Engine.CurY := Y; Memo1.Text := tmpSaveText; Reprinit := False; end; end;
procedure Memo1OnAfterPrint(Sender: TfrxComponent); begin SaveText := Memo1.Text; end;
Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.
Комментарии
вот еще вопрос:
вот картинка на ней должно быть все понятно
http://slil.ru/22681999
в самом Мемо1
[MyLine]
вопщем если поле с "1" переходит на следющую страницу то эта "1" повторяется на др. странице
нето, теперь понял что надо
1. твою мемку с цифрой(Memo1) ложим на бенд Overlay и делаем его невидимым
2. добовляем глобальные переменные
var
Reprinit: Boolean;
SaveText: string;
3. Добовляем следующие обработчики MasterData беднду
4.
begin
Reprinit := False; // на всякий случай
end.
5. Доболяем обработчик для мемки с числом
вроде работает (не проверял если одна запись растяниться на больше чем 2 страницы скорее всего на сработает)
проверил не работет в случае если
1. одна запись растяниться на больше чем 2 страницы
2. елси разрываеться полседняя запись