Pregunta

I´ve got a problem while creating a table. Heres my code:

Tbl projectTable = TblFactory.createTable(rows, cols, cellWidthTwips);
Tr tr = (Tr) projectTable.getContent().get(0); 
Tc tc = (Tc) tr.getContent().get(0);
tc.getContent().add( this.mainDocument.createParagraphOfText("Cell 1"));

List<Object> lines = mainDocument.getContent();
lines.add(5, projectTable);

The table is added at the wanted position, but without any borders.

When I use the
wordMLPackage.getMainDocumentPart().addObject(projectTable); method, everything works just fine. The wanted table with borders.

Where is my mistake :(?

EDIT: Here two Links to images of my XML code (can't upload because I don't have enough reputation)

XML Part 1

XML Part 2

And here is the XML code to copy paste:

-<w:p w:rsidP="00CD4679" w:rsidRDefault="00F63A9F" w:rsidR="00CD4679" w:rsidRPr="00CD4679">-<w:pPr>-<w:rPr><w:b/></w:rPr></w:pPr>-<w:r>-<w:rPr><w:b/></w:rPr><w:t>test</w:t></w:r></w:p>-<w:tbl>-<w:tblPr><w:tblW w:w="0" w:type="auto"/><w:tblLook w:val="04A0"/></w:tblPr>-<w:tblGrid><w:gridCol w:w="2017"/><w:gridCol w:w="1473"/><w:gridCol w:w="1451"/><w:gridCol w:w="1492"/><w:gridCol w:w="1423"/><w:gridCol w:w="1432"/></w:tblGrid>-<w:tr w:rsidR="00B94E3A" w:rsidTr="00F63A9F">-<w:tc>-<w:tcPr><w:tcW w:w="2017" w:type="dxa"/></w:tcPr><w:p w:rsidRDefault="00B94E3A" w:rsidR="00B94E3A"/>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1473" w:type="dxa"/></w:tcPr>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1451" w:type="dxa"/></w:tcPr>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1492" w:type="dxa"/></w:tcPr>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1423" w:type="dxa"/></w:tcPr><w:p w:rsidRDefault="00B94E3A" w:rsidR="00B94E3A"/>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1432" w:type="dxa"/></w:tcPr><w:p w:rsidRDefault="00B94E3A" w:rsidR="00B94E3A"/>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc></w:tr>-<w:tr w:rsidR="00B94E3A" w:rsidTr="00F63A9F">-<w:tc>-<w:tcPr><w:tcW w:w="2017" w:type="dxa"/></w:tcPr>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1473" w:type="dxa"/></w:tcPr><w:p w:rsidRDefault="00B94E3A" w:rsidR="00B94E3A"/>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1451" w:type="dxa"/></w:tcPr>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1492" w:type="dxa"/></w:tcPr><w:p w:rsidRDefault="00B94E3A" w:rsidR="00B94E3A"/>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1423" w:type="dxa"/></w:tcPr><w:p w:rsidRDefault="00B94E3A" w:rsidR="00B94E3A"/>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc>-<w:tc>-<w:tcPr><w:tcW w:w="1432" w:type="dxa"/></w:tcPr><w:p w:rsidRDefault="00B94E3A" w:rsidR="00B94E3A"/>-<w:p w:rsidRDefault="00F63A9F" w:rsidR="00B94E3A">-<w:r><w:t>test</w:t></w:r></w:p></w:tc></w:tr></w:tbl><w:p w:rsidP="0081364D" w:rsidRDefault="00C46EF4" w:rsidR="00C46EF4"/>-<w:p w:rsidP="0081364D" w:rsidRDefault="00C46EF4" w:rsidR="00C46EF4" w:rsidRPr="00CD4679">-<w:pPr>-<w:rPr><w:b/></w:rPr></w:pPr>-<w:r><w:t>Ende der Vorlage</w:t></w:r></w:p>-<w:sectPr w:rsidR="00C46EF4" w:rsidRPr="00CD4679" w:rsidSect="006C532E"><w:pgSz w:w="11906" w:h="16838"/><w:pgMar w:gutter="0" w:footer="708" w:header="708" w:left="1417" w:bottom="1134" w:right="1417" w:top="1417"/><w:cols w:space="708"/><w:docGrid w:linePitch="360"/></w:sectPr>
¿Fue útil?

Solución

public static void addBorders(Tbl table) 
{
    table.setTblPr(new TblPr());
    CTBorder border = new CTBorder();
    border.setColor("auto");
    border.setSz(new BigInteger("4"));
    border.setSpace(new BigInteger("0"));
    border.setVal(STBorder.SINGLE);

    TblBorders borders = new TblBorders();
    borders.setBottom(border);
    borders.setLeft(border);
    borders.setRight(border);
    borders.setTop(border);
    borders.setInsideH(border);
    borders.setInsideV(border);
    table.getTblPr().setTblBorders(borders);
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top