Вопросы по программному использованию FastReport
Здравствуйте.
Задача в следующем: необходимо вывести набор строк из TQuery не прибегая к свойствам DataSource и пр. Т.е. расчертить лист "ручками".
Делаю так:
Создаю страницу:
код:
repMain.Pages.Clear;
repMain.Pages.Add;
MyPage := repMain.Pages[0];
Создаю band и выставляю свойства:
код:
repBand := TfrBandView.Create;
with repBand do begin
SetBounds(1,1,1069, 10);
BandType := btNone;
Prop := True;
Prop := True;
end;
MyPage.Objects.Add(repBand);
Создаю мемо для вывод строк (пускай в TQuery Fields.Count = 1):
код:
repView := TfrMemoView.Create;
with repView do begin
SetBounds(1, 1, 1069, 10);
Prop := True;
end;
MyPage.Objects.Add(repView);
Потом заполняю значением это самое repView.
Не получается вот что:
1. Высота memo не подгоняется по ширине значений в нем.
2. Если высота memo больше высоты листа, то не происходит разбиения на несколько.
Увы, различные "эксперименты" не принесли желаемого результата, поэтому прошу помочь.
Заранее спасибо.
Задача в следующем: необходимо вывести набор строк из TQuery не прибегая к свойствам DataSource и пр. Т.е. расчертить лист "ручками".
Делаю так:
Создаю страницу:
код:
repMain.Pages.Clear;
repMain.Pages.Add;
MyPage := repMain.Pages[0];
Создаю band и выставляю свойства:
код:
repBand := TfrBandView.Create;
with repBand do begin
SetBounds(1,1,1069, 10);
BandType := btNone;
Prop := True;
Prop := True;
end;
MyPage.Objects.Add(repBand);
Создаю мемо для вывод строк (пускай в TQuery Fields.Count = 1):
код:
repView := TfrMemoView.Create;
with repView do begin
SetBounds(1, 1, 1069, 10);
Prop := True;
end;
MyPage.Objects.Add(repView);
Потом заполняю значением это самое repView.
Не получается вот что:
1. Высота memo не подгоняется по ширине значений в нем.
2. Если высота memo больше высоты листа, то не происходит разбиения на несколько.
Увы, различные "эксперименты" не принесли желаемого результата, поэтому прошу помочь.
Заранее спасибо.
Комментарии
1. Можно ли программно или через дизайнер изменить внешний вид PreviewButton?
2. Можно ли добавить свою панель (не форму диалога) со своими же кнопочками?
3. Добавляю в memo строки. Если строка длинее, чем само memo, то он переносится на другую строчку. Все бы ничего, но при включенном UnderLines он подчеркивает как начало, таки "хвостик" строки - получается, что добавилось две строки, а не одна. Можно ли как-нибудь с этим бороться (кроме способов "выключить перенос" и "поставить AutoWidth")
BandType := btNone;
тут надо бы реальный бэнд указать, например btMasterData.
По второму письму:
1) имеется в виду кнопка Preview в дизайнере или все кнопки окна Preview?
2) опять же, куда добавить - в дизайнер или превью? Можно добавлять свои кнопки на панель инструментов "Мастера" в дизайнере, надо зарегистрировать свой мастер. Что касается превью, надо использовать custom preview - в демке есть пример.
3) бороться нельзя
По второму письму. Я, видимо, не полность овладел "языком FastReport", поэтому попытаюсь объяснить своими словами, а вы подскажите, пожалуйста, как это будет звучать "правильно".
1,2. После того, как вызвали Fastreport.ShowReport, открывается модальное окно отчета (как правильно сказать?). Я не использую компонент "Preview". У самого отчета есть свойство PreviewButton, которое отвечает за кнопки, которые показываются в панели "модального окна отчета" (масштаб, сохранить, открыть...). Вопрос именно про эти кнопки и эту панель в этом окне.
3. В таком случае, не подскажите рациональный способ отображения данных массива в колонку, с горизонтальными разделителями строк.
Еще раз извиняюсь за незнание терминов и названий. Обещаю исправиться.