2013-03-20 40 views
2

我在excel中有多行,其中內容很小,除了最上面一行。 只是爲了在頂行中插入一個大標題,我不希望後續行的寬度受到影響。 有沒有一種方法可以跨越多列的頂行中的內容並且不影響後續行的寬度。JXL Column Span

回答

2

是的,通過使用WritableSheet.mergeCells方法。

例如:

WritableWorkbook w = Workbook.createWorkbook(outputStream); 
WritableSheet s = w.createSheet("MySheet", 0); 
int row = 0; 

WritableCell titleCell = new Label(0, row, "Hello World"); 
s.addCell(titleCell); 
s.mergeCells(0, row, 13, row); 

這具有使第一行是13個單元寬的效果,並且不會影響後續的行的單元寬度。請注意,這將允許您合併行,但這不起作用。正確的方法來改變行高是:

/* Row heights are in 20ths of a point */ 
int fontPointSize = 16; 
int rowHeight = (int) ((1.5d * fontPointSize) * 20); 
s.setRowView(row, rowHeight, false); 
1

這是可能的,玩弄這個。希望它能幫助你。

int col1 = 0; 
int col2 = 2; 
int row1 = 0; 
int row2 = 0; 

WritableWorkbook workbook = Workbook.createWorkbook(outputStream); 
WritableSheet sheet = workbook.createSheet("MySheet", 0); 
sheet.mergeCells(col1,row1,col2,row2); 
//This makes the cell at row1 and col1 span the next two cells 
//Write content at the marge cell 
sheet.addCell(new Label(col1,row1,"Content here")); 

參考文獻: first referencesocond reference