|
|
|
| Подскажите как решить вопрос: необходимо изменить размер вертикальных линий в отчете в зависимости от содержимого отчета.
Отчет состоит из нескольких полей и подчиненных отчетов расположенных вертикально друг под другом. Высота линии должна быть равна чуть больше суммы высот объектов. Объекты имеют свойство расширения и сжатия - в этом и проблема. | |
|
| |
|
|
|
| на сыбытие Report.onPrint менять высоту линии | |
|
| |
|
|
|
| Если бы знал как реализовать изменение высоты линии - вопрос бы не задавал. Если не сложно можно примерчик или ссылочку где глянуть как работать с этим объектом? | |
|
| |
|
|
|
| ну явно по английски высота - это Height
а у всех объектов есть свойства и методы...
а высота - это явно - свойство.
вот и ищите такое свойство у линии, которую хотите "вырасти"
и меняйте его на событии, указанном выше... | |
|
| |
|
|
|
| Да..извинясь за помутнение рассудка - прописная истина вобщем то.
Единственное чего не могу понять, так как применить событие описанное выше.
У отчета нет события Print. У области данных отчета есть событие Print. Если код на изменение длины линии поместить туда то выдается ошибка 2191 - мол невозможно задать значение высоты после начала печати.
Поясните пожалуйста! | |
|
| |
|
|
|
| не так давно был этот вопрос на этом форуме - можно найти (или в болталке спрашивали-отвечали - уже не помню) | |
|
| |
|
|
|
| Кто - нибудь поясните как все таки воспользоваться событием report.onPrint для изменения высоты линии (как изменить размер линии понятно).!!! | |
|
| |
|
|
|
| >выдается ошибка 2191 - мол невозможно задать значение высоты после начала печати.
Правильно выдается. На событии Print нельзя менять размеры полей.
Линии нужно рисовать методом Line отчета. В инете есть примеров...
Рекомендую ваши вертикальные линии (VL) сделать невидимыми и добавить горизонтальную линию (HL) по низу раздела (тоже невидимую). Методу Me.Line передавать значения Left вертикальной и Top горизонтальной.
rpt.Line(0, VL1.Left) - (HL.Top, VL1.Left) - вертикальная линия на всю высоту раздела.
При необходимости толщину линии (в пикселах) можно указать свойству Me.DrawWidth
ЗЫ. HELP на этот метод в А2000-2002 некорректный. Правильный - в А97. | |
|
| |
|
|
|
|
| Большое спасибо за помощь. Мысль использовать горизонтальную линию, а не сумму высот полей - вообще изюм!! | |
|
| |