2015-04-01 2 views
2

вот моя интересная ситуация,Показать выбранные Роу из ComboBoxTableView в JavaFX

Я пытаюсь получить доступ к выпадающий из Tableview, который имеет колонку, содержащую cellfactory из ComboBoxTableCell. Это будет доступно через обработчик событий, так что, когда пользователь нажимает «ввести» в строке, combobox покажет его элементы.

ComboboxTableCell был создан как

tableViewCol.setCellFactory(ComboBoxTableCell.forTableColumn(anObservableArrayList)); 

TableView, который я мог бы получить доступ упоминается как:

@FXML 
private TableView<Obj> tableView; 
@FXML 
private TableColumn<Obj, String> tableViewCol; 

Самая дальняя я смог был tablecol следующие этих путей, .getClass () в результате: «класс javafx.scene.control.TableColumn $ 1»:

tableView.getSelectionModel().getSelectedCells().get(0).getTableColumn().getCellFactory().call() 

tableView.getSelectionModel().getSelectedCells().get(0).getTableColumn().cellFactoryProperty() 

Еще раз, я пытаюсь получить доступ к выбранной строке в представлении таблицы, чей столбец имеет ComboBoxTableCell, и я пытаюсь открыть comboBox выбранной строки, когда произойдет щелчок события, произойдет событие. Я просто не могу определить, как получить доступ к нему, и это заставляет меня сходить с ума.

Для визуального отображения см. Первую ссылку, затем вторую. http://i.stack.imgur.com/teV4S.png http://i.stack.imgur.com/7kjPs.png (Bleh, новички не могут размещать изображения).

Любые полезные советы, альтернативы, отзывы полезны. Спасибо!

+0

Вы можете создать свой собственный comboboxcell на основе элемента ячейки, а затем, когда вызывается «enter», вы открываете combobox в startEdit(). См. [Этот аналогичный подход] (http://stackoverflow.com/questions/29387386/populate-combo-box-list-dynamically-for-each-row-in-javafx-table-view/29390823#29390823) –

ответ

0

Доступ к Comobobx можно получить через cell.getGraphic().

Но делать что-то вроде этого:

tableView.edit(tableView.getSelectionModel().getSelectedIndex(), tableViewCol); 

и это каждый раз отборе изменилось.

Если вы хотите, вы можете написать свой собственный Comboboxcell с автоматическим отображением его Графика при выборе его строки.

Смежные вопросы