On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
постоянный участник


Пост N: 715
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 26.01.12 15:31. Заголовок: Существует ли в FastReport возможность динамически


"рулить" обрамлением текстового поля? Т.е., к примеру, рисовать или нет рамку в зависимости от содержимого поля?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 5 [только новые]


постоянный участник


Пост N: 599
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 26.01.12 22:41. Заголовок: PSP пишет: Т.е., к ..


PSP пишет:

 цитата:
Т.е., к примеру, рисовать или нет рамку в зависимости от содержимого поля?



Конечно можно. Вообще говоря, скриптом можно рулить всем, что есть в FR Насчет обрамления, например:

procedure Memo8OnBeforePrint(Sender: TfrxComponent); 
begin
if bla-bla then
TfrxMemoView(Sender).Frame.Typ := ftLeft + ftTop;
end;


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 716
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 27.01.12 08:09. Заголовок: Спасибо. :sm12: ..


Спасибо.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 600
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 27.01.12 11:34. Заголовок: Да не за что :sm12:..


Да не за что Спрашивай, что не понятно.

Данный вопрос, наверное, возник потому, что "не прошло" просто:

Sender.Frame.Typ := ftLeft + ftTop;


Так? Если так, то тут надо понять, что Pascal и C языки типизированные и с такой передачей в параметре объекта возникают полиморфные нюансы, которых нет в нетипизированных языках. JavaScript и BasicScript в фасте - нетипизированные языки и там такое присвоение пройдёт.

В Pascal и C ситуация следующая, этот обработчик события может "обслуживать" много разных типов объектов, поэтому в обработчиках параметр Sender имеет тип TfrxComponent, это общий предок для вообще всех объектов FR. В реальности же передаваться может любой из его потомков. TfrxMemoView(Sender) - это приведение Sender к типу TfrxMemoView. Если в обработчик могут передаваться объекты разных типов и вызывать надо специфические (а не общие) их методы, то нужно будет писать так:

 
if Sender is TfrxMemoView then
TfrxMemoView(Sender).Frame.Typ := ftLeft + ftTop
else
if Sender is TfrxPictureView then....






Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 717
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 27.01.12 15:20. Заголовок: Серёж, спасибо за ра..


Серёж, спасибо за разъяснения.
Честно говоря, я еще не пытался использовать скрипты.
Вот возникла ситуация, когда придётся. Еще раз спасибо!

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2247
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.06.12 16:45. Заголовок: Вопрос к знатокам Fa..


Вопрос к знатокам FastReport, а может и дело не в Фасте ?

Столкнулся с проблемой:
Никак не могу понять, что за тип переменной в Фасте - FrPrn ?
PRIVATE FrPrn

//----------- Now load and init FastReport --------------------------------------
FrPrn := frReportManager():new(cFileFastDll)
//---------- Set the same icon for FastReport windows ----------
FrPrn:SetIcon( "FAST_ICO" )

Это типа переменная ОБЪЕКТ ? Как в OLE-объекте ?
А как тогда ее передавать по ссылке в другие функции ?

Поясню кодом:
В функции (которую вызываю раньше чем инициализация переменных FastReport) пишу следующее:

Скрытый текст

Пример для директории взят в 6.fr3 в ДЕМО
Но там инициализация Фаста вверху программы FrPrn := frReportManager():new(cFileFastDll),
а у меня получается, что я сначала задаю объект обработки, а инициализация Фаста еще не была.

Как сделать в таком случае ?



Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 35
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет