Search in sources :

Example 6 with SpreadsheetCell

use of org.controlsfx.control.spreadsheet.SpreadsheetCell in project Gargoyle by callakrsos.

the class SchoolMgrerSpreadSheetView method miSaveAsOnAction.

/**
	 * 파일 저장 처리.
	 * @작성자 : KYJ
	 * @작성일 : 2016. 12. 27.
	 * @param event
	 */
public void miSaveAsOnAction(ActionEvent event) {
    File saveFile = DialogUtil.showFileSaveCheckDialog(getScene().getWindow(), chooser -> {
        chooser.getExtensionFilters().add(new ExtensionFilter(GargoyleExtensionFilters.XLSX_NAME, GargoyleExtensionFilters.XLSX));
    });
    if (saveFile != null) {
        ThreadUtil.createNewThreadAndRun(() -> {
            try (Workbook workBookXlsx = ExcelUtil.createNewWorkBookXlsx()) {
                Sheet createSheet = workBookXlsx.createSheet("Sheet1");
                ObservableList<ObservableList<SpreadsheetCell>> rows = gagoyleSpreadSheetView.getRows();
                IntStream.iterate(0, r -> r + 1).limit(rows.size()).forEach(rIndex -> {
                    ObservableList<SpreadsheetCell> cellList = rows.get(rIndex);
                    IntStream.iterate(0, a -> a + 1).limit(cellList.size()).forEach(cidx -> {
                        SpreadsheetCell spreadsheetCell = cellList.get(cidx);
                        String text = spreadsheetCell.getText();
                        try {
                            ExcelUtil.createCell(createSheet, text, rIndex, cidx);
                        } catch (Exception e1) {
                            e1.printStackTrace();
                        }
                    });
                });
                workBookXlsx.write(new FileOutputStream(saveFile));
            } catch (IOException e) {
                e.printStackTrace();
            }
        });
    }
}
Also used : SpreadsheetCell(org.controlsfx.control.spreadsheet.SpreadsheetCell) ObservableList(javafx.collections.ObservableList) ExtensionFilter(javafx.stage.FileChooser.ExtensionFilter) FileOutputStream(java.io.FileOutputStream) IOException(java.io.IOException) File(java.io.File) Sheet(org.apache.poi.ss.usermodel.Sheet) Workbook(org.apache.poi.ss.usermodel.Workbook) IOException(java.io.IOException)

Aggregations

ObservableList (javafx.collections.ObservableList)6 SpreadsheetCell (org.controlsfx.control.spreadsheet.SpreadsheetCell)6 Grid (org.controlsfx.control.spreadsheet.Grid)3 File (java.io.File)2 ExcelTemplateControl (com.kyj.fx.voeditor.visual.component.spreadsheets.ExcelTemplateControl)1 GagoyleSpreadSheetView (com.kyj.fx.voeditor.visual.component.spreadsheets.GagoyleSpreadSheetView)1 FileOutputStream (java.io.FileOutputStream)1 IOException (java.io.IOException)1 ArrayList (java.util.ArrayList)1 List (java.util.List)1 Scene (javafx.scene.Scene)1 TablePosition (javafx.scene.control.TablePosition)1 Image (javafx.scene.image.Image)1 ExtensionFilter (javafx.stage.FileChooser.ExtensionFilter)1 Sheet (org.apache.poi.ss.usermodel.Sheet)1 Workbook (org.apache.poi.ss.usermodel.Workbook)1 GridBase (org.controlsfx.control.spreadsheet.GridBase)1