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() непосредственно. Но это немного сложнее, чем должно быть.

0 ответов

Другие вопросы по тегам