Показать сообщение отдельно
Старый 30.12.2004, 13:54   #10  
gudzon is offline
gudzon
программист
 
1,166 / 329 (13) ++++++
Регистрация: 06.07.2004
Адрес: Москва
Как делаю я...
Сетку делать трудно (по крайней мере, я пока не нашел легкого решения...).
Особенно, если поля разной высоты...

Схема такая:
body - поля из таблицы.
У всех полей убираете метки.

У body ставите
lineAbove = solid;
lineBelow = solid;
lineLeft = solid;
lineRight = solid;

У самого высокого поля ставите DynamicHeader = true, между полями ставите вертикальные shape нулевой высоты. Перекрываете метод ExecuteQuery у body так

public void executeSection()
{
real mm100;
;
mm100 = FullName.heightOfWordWrappedString100mm( tmpReportTable.FullName );
Shape_1.height(mm100/100.0+1, Units::mm);
Shape_2_2.height(mm100/100.0+1, Units::mm);
И т.д….
super();
}

P.S. tmpReportTable.FullName – высокое поле
Shape_1.height(mm100/100.0+1, Units::mm) – динамическая установка высоты.

Ну и заголовок формируете в виде PageHeader (чтоб на новой странице появлялся) с обычным текстом. У текста ставите рамки… Текст надо сделать по ширине равным ширине полей из body (очень трудоемко)…

Правда не знаю как сделать сетку если несколько полей с разной высотой… Но думаю это возможно.
За это сообщение автора поблагодарили: Gustav (16).