我很好奇是否有办法将JavaFX Label 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()
尝试在实际的&#34; tablerow&#34;上执行ChangeListener
。
这个问题的最佳解决方案是什么?目前我已在selectedItemProperty()
上实施setText()
,而不是直接调用Accounts.emailTemplates.resetPassword.html = (user, url) =>
`<a href="${url}" style="{ something cool... }">Reset your password</a>`;
来更改标签文字。但这应该比它应该有点复杂。