2015-05-08 4 views
1

Как создать объект (Button, Checkbox) в моей таблице?Как добавить кнопку в таблицу SpreadsheetView

GridBase grid = new GridBase(20, 20); 

    ObservableList<ObservableList<SpreadsheetCell>> rows = FXCollections.observableArrayList(); 
    for (int row = 0; row < grid.getRowCount(); ++row) { 
     final ObservableList<SpreadsheetCell> list = FXCollections.observableArrayList(); 
     for (int column = 0; column < grid.getColumnCount(); ++column) { 
      list.add(new ObjectType().createCell(row, column, 1, 1, new Button("CLICK"))); 
     } 
     rows.add(list); 
    } 
    grid.setRows(rows); 
    SpreadsheetView spv = new SpreadsheetView(grid); 

Выход в таблице:

Кнопка @ 79280814 [styleClass = кнопка] 'CLICK'

Кнопка @ 3ad2325d [styleClass = кнопка] 'CLICK'

ответ

1

Я думаю, что у меня есть нашел :)

1-)

SpreadsheetCellBase cell = new SpreadsheetCellBase(row, column, 1, 1); 

         cell.setGraphic(new Button("Test Button")); 

         list.add(cell) 

2-)

SpreadsheetCell cellIndex = SpreadsheetCellType.STRING.createCell(row, column, 1, 1,null); 

        cellIndex.setGraphic(new Button("Test Button")); 

        cells.add(cellIndex); 
+0

Вы правы. Используемый objectType использует метод toString для отображения объекта. Итак, вам нужно либо создать свой собственный тип, либо просто использовать StringType, как и вы, и установить графику. – Maxoudela