NullPointerException, связывающий текст метки с selectedItemProperty TableView
Мне любопытно, есть ли способ привязать метку JavaFX textProperty()
в TableViews selectedItemProperty()
без получения NullPointerException
когда запись не выбрана, например, во время инициализации.
Вот небольшой фрагмент, чтобы проиллюстрировать реальную ситуацию:
@FXML
private Label l_name;
@FXML
TableView<TableEntry> tv_table;
l_name.textProperty().bind(tv_table.selectedItemProperty().get().getName());
get()
может только вернуть объект типа TableEntry
когда элемент выбран, что не имеет место во время выполнения initialize()
метод в моем классе контроллера. Таким образом, код бросает NullPointerException
пытаясь выполнить getName()
на фактической "скатерти".
Как лучше всего решить эту проблему? На данный момент я реализовал ChangeListener
на selectedItemProperty()
, который затем меняет текст метки, вызывая setText()
непосредственно. Но это немного сложнее, чем должно быть.