2013-07-03 4 views
0

Я использую ireport-4.5.0, jasper-reports-4.5.0. Я пытаюсь добавить границу в заголовок столбца. Пока я googling, я нашел что мы можем получить границу с помощью прямоугольника. Я использовал прямоугольник, но я не получил border.Below - это код, который я использую.Как получить границу для заголовка столбца заголовка, используя прямоугольник

<columnHeader> 
     <band height="39" splitType="Stretch"> 
      <rectangle> 
       <reportElement x="131" y="0" width="424" height="39"/> 
      </rectangle> 
      <rectangle> 
       <reportElement x="0" y="1" width="131" height="38"/> 
      </rectangle> 
      <staticText> 
       <reportElement x="11" y="16" width="108" height="14"/> 
       <textElement> 
        <font size="12" isBold="true"/> 
       </textElement> 
       <text><![CDATA[Business Name]]></text> 
      </staticText> 
      <staticText> 
       <reportElement x="154" y="10" width="361" height="20"/> 
       <textElement textAlignment="Center"> 
        <font size="12" isBold="true"/> 
       </textElement> 
       <text><![CDATA[Sales Report]]></text> 
      </staticText> 
     </band> 
    </columnHeader> 

Может ли кто-нибудь указать мне правильное направление, где я совершаю ошибку.

Спасибо заранее.

+1

Вы можете посмотреть на [Добавление границы таблицы в JasperReports] (http://stackoverflow.com/q/10278067/876298) после –

+0

Привет Алекс, я не хочу использовать Padding And Borders. Мне нужно использовать Rectangle only.I отредактировал мой оригинальный вопрос. – NSS

+0

Bcoz Мне нужно добавить границу в subreport also.I думаю, у нас нет Padding And Borders для subreports.So мне нужно использовать только прямоугольник. – NSS

ответ

2

проблема заключается в том, что прямоугольник должен быть немного большим, чем поле. если вы думаете о слоях, то текстовое поле находится над прямоугольником, и поэтому вы не можете видеть прямоугольник. Использование границ работает намного лучше. Просто щелкните правой кнопкой мыши по объекту и перейдите к «заполнению и границам»

<columnHeader> 
    <band height="20" splitType="Stretch"> 
     <staticText> 
      <box> 
       <pen lineWidth="0.5"/> 
       <topPen lineWidth="0.5"/> 
       <leftPen lineWidth="0.5"/> 
       <bottomPen lineWidth="0.5"/> 
       <rightPen lineWidth="0.5"/> 
      </box> 
      <textElement> 
       <font size="12" isBold="true"/> 
      </textElement> 
      <text><![CDATA[Business Name]]></text> 
     </staticText> 
     <staticText> 
      <box> 
       <pen lineWidth="0.5"/> 
       <topPen lineWidth="0.5"/> 
       <leftPen lineWidth="0.5"/> 
       <bottomPen lineWidth="0.5"/> 
       <rightPen lineWidth="0.5"/> 
      </box> 
      <textElement textAlignment="Center"> 
       <font size="12" isBold="true"/> 
      </textElement> 
      <text><![CDATA[Sales Report]]></text> 
     </staticText> 
    </band> 
</columnHeader> 
+0

Привет, Mnoland.I не хочу использовать Padding и Borders.I нужно использовать Rectangle Only.I пытались дать размер прямоугольника больше, чем поле. Но все равно я не получаю border.I отредактировал мой оригинал вопрос. Можете ли вы плз заглянуть в него. Спасибо – NSS

0

Используйте два прямоугольника для каждого статического текста. Попробуйте это, но я сделал только для центра текста: -

<columnHeader> 
    <band height="39" splitType="Stretch"> 
     <rectangle> 
      <reportElement x="131" y="0" width="424" height="39" backcolor="#FF6666"/> 
     </rectangle> 
     <rectangle> 
      <reportElement x="134" y="3" width="419" height="31"/> 
     </rectangle> 
     <staticText> 
      <reportElement x="154" y="10" width="361" height="20"/> 
      <textElement textAlignment="Center"> 
       <font size="12" isBold="true"/> 
      </textElement> 
      <text><![CDATA[Sales Report]]></text> 
     </staticText> 
    </band> 
</columnHeader> 
Смежные вопросы