Я использую JavaFX (с jfoenix) для создания своего приложения с помощью SceneBuilder для проектирования.
Я хочу построить отражение текстового представления для ячейки таблицы, что-то вроде Microsoft Excel (разрешить пользователю более легко редактировать текст)
- Когда пользователь нажимает / печатает на какой-либо ячейке в таблице, TextArea немедленно обновит текст ячейки
- Противоположное - когда пользователь введет текстовую область, ячейка будет обновляться при каждом нажатии клавиши.
Что я делал до сих пор?
- Создайте JFXTreeTableView со всей информацией.
- Создание TextView.
- Обновление TextView, когда пользователь выбирает (или заканчивает ячейку редактирования) некоторую ячейку в таблице - код приведен ниже.
Что мне не удалось сделать до сих пор?
- Обновление ячейки при редактировании пользователем TextArea (при каждом изменении).
Обновлять TextView при каждом изменении редактирования ячейки.
treeView.setOnMousePressed (e -> {
if (e.isPrimaryButtonDown()) {
updateTextArea();
updateDetailsText();
}
});
private void updateTextArea() {
TreeTableView.TreeTableViewFocusModel<ModelTable> tfm = treeView.getFocusModel();
TreeTablePosition<ModelTable, ?> tablePosition = tfm.getFocusedCell();
TreeTableColumn<ModelTable, ?> tableColumn = tablePosition.getTableColumn();
int rowIndex = treeView.getFocusModel().getFocusedCell().getRow();
String data = tableColumn.getCellData(rowIndex).toString();
edit_cell_text.setText(data.toString()) }
Я не смог найти ни одного примера / подсказки к чему-либо подобному в сети, я хотел бы знать, возможно ли это.
Большое спасибо!