jxl.write
Interface WritableSheet

All Superinterfaces:
Sheet

public interface WritableSheet
extends Sheet

Interface for a worksheet that may be modified. The most important modification for a sheet is to have cells added to it


Method Summary
 void addCell(WritableCell cell)
          Adds a cell to this sheet The RowsExceededException may be caught if client code wishes to explicitly trap the case where too many rows have been written to the current sheet.
 void addColumnPageBreak(int col)
          Forces a page break at the specified column
 void addHyperlink(WritableHyperlink h)
          Adds the specified hyperlink.
 void addImage(WritableImage image)
          Adds an image to the sheet
 void addRowPageBreak(int row)
          Forces a page break at the specified row
 WritableImage getImage(int i)
          Accessor for the image
 int getNumberOfImages()
          Accessor for the number of images on the sheet
 WritableCell getWritableCell(int column, int row)
          Gets the writable cell from this sheet.
 WritableCell getWritableCell(java.lang.String loc)
          Returns the cell for the specified location eg.
 WritableHyperlink[] getWritableHyperlinks()
          Gets the writable hyperlinks from this sheet.
 void insertColumn(int col)
          Inserts a blank column into this spreadsheet.
 void insertRow(int row)
          Inserts a blank row into this spreadsheet.
 Range mergeCells(int col1, int row1, int col2, int row2)
          Merges the specified cells.
 void removeColumn(int col)
          Removes a column from this spreadsheet.
 void removeHyperlink(WritableHyperlink h)
          Removes the specified hyperlink.
 void removeHyperlink(WritableHyperlink h, boolean preserveLabel)
          Removes the specified hyperlink.
 void removeImage(WritableImage wi)
          Removes the specified image from the sheet.
 void removeRow(int row)
          Removes a row from this spreadsheet.
 void setColumnGroup(int col1, int col2, boolean collapsed)
          Sets a column grouping
 void setColumnView(int col, CellView view)
          Sets the view for this column
 void setColumnView(int col, int width)
          Sets the width of the column on this sheet, in characters.
 void setColumnView(int col, int width, CellFormat format)
          Deprecated. Use the CellView bean instead
 void setFooter(java.lang.String l, java.lang.String c, java.lang.String r)
          Deprecated. use the SheetSettings bean
 void setHeader(java.lang.String l, java.lang.String c, java.lang.String r)
          Deprecated. use the SheetSettings bean
 void setHidden(boolean hidden)
          Deprecated. use the SheetSettings bean instead
 void setName(java.lang.String name)
          Sets the name of this sheet
 void setPageSetup(PageOrientation p)
          Sets the page setup details
 void setPageSetup(PageOrientation p, double hm, double fm)
          Sets the page setup details
 void setPageSetup(PageOrientation p, PaperSize ps, double hm, double fm)
          Sets the page setup details
 void setProtected(boolean prot)
          Deprecated. use the SheetSettings bean instead
 void setRowGroup(int row1, int row2, boolean collapsed)
          Sets a row grouping
 void setRowView(int row, boolean collapsed)
          Sets the properties of the specified row
 void setRowView(int row, CellView view)
          Sets the view for this column
 void setRowView(int row, int height)
          Sets the height of the specified row, as well as its collapse status
 void setRowView(int row, int height, boolean collapsed)
          Sets the height of the specified row, as well as its collapse status
 void unmergeCells(Range r)
          Unmerges the specified cells.
 void unsetColumnGroup(int col1, int col2)
          Unsets a column grouping
 void unsetRowGroup(int row1, int row2)
          Unsets a row grouping
 
Methods inherited from interface jxl.Sheet
findCell, findCell, findCell, findLabelCell, getCell, getCell, getColumn, getColumnFormat, getColumnPageBreaks, getColumns, getColumnView, getColumnWidth, getDrawing, getHyperlinks, getMergedCells, getName, getRow, getRowHeight, getRowPageBreaks, getRows, getRowView, getSettings, isHidden, isProtected
 

Method Detail

addCell

public void addCell(WritableCell cell)
             throws WriteException,
                    jxl.write.biff.RowsExceededException
Adds a cell to this sheet The RowsExceededException may be caught if client code wishes to explicitly trap the case where too many rows have been written to the current sheet. If this behaviour is not desired, it is sufficient simply to handle the WriteException, since this is a base class of RowsExceededException

Parameters:
cell - the cell to add
Throws:
jxl.write..WriteException
jxl.write.biff.RowsExceededException
WriteException

setName

public void setName(java.lang.String name)
Sets the name of this sheet

Parameters:
name - the name of the sheet

setHidden

public void setHidden(boolean hidden)
Deprecated. use the SheetSettings bean instead

Indicates whether or not this sheet is hidden

Parameters:
hidden - hidden flag

setProtected

public void setProtected(boolean prot)
Deprecated. use the SheetSettings bean instead

Indicates whether or not this sheet is protected

Parameters:
prot - Protected flag

setColumnView

public void setColumnView(int col,
                          int width)
Sets the width of the column on this sheet, in characters. This causes Excel to resize the entire column. If the columns specified already has view information associated with it, then it is replaced by the new data

Parameters:
col - the column to be formatted
width - the width of the column

setColumnView

public void setColumnView(int col,
                          int width,
                          CellFormat format)
Deprecated. Use the CellView bean instead

Sets the width and style of every cell in the specified column. If the columns specified already has view information associated with it, then it is replaced by the new data

Parameters:
col - the column to be formatted
format - the format of every cell in the column
width - the width of the column, in characters

setColumnView

public void setColumnView(int col,
                          CellView view)
Sets the view for this column

Parameters:
col - the column on which to set the view
view - the view to set

setRowView

public void setRowView(int row,
                       int height)
                throws jxl.write.biff.RowsExceededException
Sets the height of the specified row, as well as its collapse status

Parameters:
row - the row to be formatted
height - the row height in characters
Throws:
jxl.write.biff.RowsExceededException

setRowView

public void setRowView(int row,
                       boolean collapsed)
                throws jxl.write.biff.RowsExceededException
Sets the properties of the specified row

Parameters:
row - the row to be formatted
collapsed - indicates whether the row is collapsed
Throws:
jxl.write.biff.RowsExceededException

setRowView

public void setRowView(int row,
                       int height,
                       boolean collapsed)
                throws jxl.write.biff.RowsExceededException
Sets the height of the specified row, as well as its collapse status

Parameters:
row - the row to be formatted
height - the row height in 1/20th of a point
collapsed - indicates whether the row is collapsed
Throws:
jxl.write.biff.RowsExceededException

setRowView

public void setRowView(int row,
                       CellView view)
                throws jxl.write.biff.RowsExceededException
Sets the view for this column

Parameters:
row - the column on which to set the view
view - the view to set
Throws:
jxl.write.biff.RowsExceededException

getWritableCell

public WritableCell getWritableCell(int column,
                                    int row)
Gets the writable cell from this sheet. Use of this method allows the returned cell to be modified by the users application

Parameters:
column - the column
row - the row
Returns:
the cell at the specified position

getWritableCell

public WritableCell getWritableCell(java.lang.String loc)
Returns the cell for the specified location eg. "A4". Note that this method is identical to calling getCell(CellReferenceHelper.getColumn(loc), CellReferenceHelper.getRow(loc)) and its implicit performance overhead for string parsing. As such,this method should therefore be used sparingly

Parameters:
loc - the cell reference
Returns:
the cell at the specified co-ordinates

getWritableHyperlinks

public WritableHyperlink[] getWritableHyperlinks()
Gets the writable hyperlinks from this sheet. The hyperlinks that are returned may be modified by user applications

Returns:
the writable hyperlinks

insertRow

public void insertRow(int row)
Inserts a blank row into this spreadsheet. If the row is out of range of the rows in the sheet, then no action is taken

Parameters:
row - the row to insert

insertColumn

public void insertColumn(int col)
Inserts a blank column into this spreadsheet. If the column is out of range of the columns in the sheet, then no action is taken

Parameters:
col - the column to insert

removeColumn

public void removeColumn(int col)
Removes a column from this spreadsheet. If the column is out of range of the columns in the sheet, then no action is taken

Parameters:
col - the column to remove

removeRow

public void removeRow(int row)
Removes a row from this spreadsheet. If the row is out of range of the columns in the sheet, then no action is taken

Parameters:
row - the row to remove

mergeCells

public Range mergeCells(int col1,
                        int row1,
                        int col2,
                        int row2)
                 throws WriteException,
                        jxl.write.biff.RowsExceededException
Merges the specified cells. Any clashes or intersections between merged cells are resolved when the spreadsheet is written out

Parameters:
col1 - the column number of the top left cell
row1 - the row number of the top left cell
col2 - the column number of the bottom right cell
row2 - the row number of the bottom right cell
Returns:
the Range object representing the merged cells
Throws:
jxl.write..WriteException
jxl.write.biff.RowsExceededException
WriteException

setRowGroup

public void setRowGroup(int row1,
                        int row2,
                        boolean collapsed)
                 throws WriteException,
                        jxl.write.biff.RowsExceededException
Sets a row grouping

Parameters:
row1 - the first row of the group
row2 - the last row of the group
collapsed - should the group be collapsed?
Throws:
WriteException
jxl.write.biff.RowsExceededException

unsetRowGroup

public void unsetRowGroup(int row1,
                          int row2)
                   throws WriteException,
                          jxl.write.biff.RowsExceededException
Unsets a row grouping

Parameters:
row1 - the first row to unset
row2 - the last row to unset
Throws:
WriteException
jxl.write.biff.RowsExceededException

setColumnGroup

public void setColumnGroup(int col1,
                           int col2,
                           boolean collapsed)
                    throws WriteException,
                           jxl.write.biff.RowsExceededException
Sets a column grouping

Parameters:
col1 - the first column of the group
col2 - the last column of the group
collapsed - should the group be collapsed?
Throws:
WriteException
jxl.write.biff.RowsExceededException

unsetColumnGroup

public void unsetColumnGroup(int col1,
                             int col2)
                      throws WriteException,
                             jxl.write.biff.RowsExceededException
Unsets a column grouping

Parameters:
col1 - the first column to unset
col2 - the last column to unset
Throws:
WriteException
jxl.write.biff.RowsExceededException

unmergeCells

public void unmergeCells(Range r)
Unmerges the specified cells. The Range passed in should be one that has been previously returned as a result of the getMergedCells method

Parameters:
r - the range of cells to unmerge

addHyperlink

public void addHyperlink(WritableHyperlink h)
                  throws WriteException,
                         jxl.write.biff.RowsExceededException
Adds the specified hyperlink. Adding a hyperlink causes any populated cells in the range of the hyperlink to be set to empty If the cells which activate this hyperlink clash with any other cells, they are still added to the worksheet and it is left to Excel to handle this.

Parameters:
h - the hyperlink
Throws:
jxl.write..WriteException
jxl.write.biff.RowsExceededException
WriteException

removeHyperlink

public void removeHyperlink(WritableHyperlink h)
Removes the specified hyperlink. Note that if you merely set the cell contents to be an Empty cell, then the cells containing the hyperlink will still be active. The contents of the cell which activate the hyperlink are removed. The hyperlink passed in must be a hyperlink retrieved using the getHyperlinks method

Parameters:
h - the hyperlink to remove.

removeHyperlink

public void removeHyperlink(WritableHyperlink h,
                            boolean preserveLabel)
Removes the specified hyperlink. Note that if you merely set the cell contents to be an Empty cell, then the cells containing the hyperlink will still be active. If the preserveLabel field is set, the cell contents of the hyperlink are preserved, although the hyperlink is deactivated. If this value is FALSE, the cell contents are removed The hyperlink passed in must be a hyperlink retrieved using the getHyperlinks method

Parameters:
h - the hyperlink to remove.
preserveLabel - if TRUE preserves the label contents, if FALSE removes them

setHeader

public void setHeader(java.lang.String l,
                      java.lang.String c,
                      java.lang.String r)
Deprecated. use the SheetSettings bean

Sets the header for this page

Parameters:
l - the print header to print on the left side
c - the print header to print in the centre
r - the print header to print on the right hand side

setFooter

public void setFooter(java.lang.String l,
                      java.lang.String c,
                      java.lang.String r)
Deprecated. use the SheetSettings bean

Sets the footer for this page

Parameters:
l - the print header to print on the left side
c - the print header to print in the centre
r - the print header to print on the right hand side

setPageSetup

public void setPageSetup(PageOrientation p)
Sets the page setup details

Parameters:
p - the page orientation

setPageSetup

public void setPageSetup(PageOrientation p,
                         double hm,
                         double fm)
Sets the page setup details

Parameters:
p - the page orientation
hm - the header margin, in inches
fm - the footer margin, in inches

setPageSetup

public void setPageSetup(PageOrientation p,
                         PaperSize ps,
                         double hm,
                         double fm)
Sets the page setup details

Parameters:
p - the page orientation
ps - the paper size
hm - the header margin, in inches
fm - the footer margin, in inches

addRowPageBreak

public void addRowPageBreak(int row)
Forces a page break at the specified row

Parameters:
row - the row to break at

addColumnPageBreak

public void addColumnPageBreak(int col)
Forces a page break at the specified column

Parameters:
col - the column to break at

addImage

public void addImage(WritableImage image)
Adds an image to the sheet

Parameters:
image - the image to add

getNumberOfImages

public int getNumberOfImages()
Accessor for the number of images on the sheet

Specified by:
getNumberOfImages in interface Sheet
Returns:
the number of images on this sheet

getImage

public WritableImage getImage(int i)
Accessor for the image

Parameters:
i - the 0 based image number
Returns:
the image at the specified position

removeImage

public void removeImage(WritableImage wi)
Removes the specified image from the sheet. The image passed in must be the same instance as that previously retrieved using the getImage() method

Parameters:
wi - the image to remove