我的TableView元素有问题。我添加了这样的听众:
HardwareIdTableView.getItems().addListener(
(ListChangeListener.Change<? extends FirmwareData.HardwareIdWrapper> change) -> {
checker.hardwareIdCompleted.setValue(change.getList().size() > 0);
});
checker.hardwareIdCompleted 是BooleanProperty。 我检查了调试器,并且新项目已添加到TableView中,但 hardwareIdCompleted 仍然拒绝错误&#39;。
P.S。 我像这样向TableView添加项目:
public void addHardwareKey(HardwareIdKeyT key) {
ObservableList<FirmwareData.HardwareIdWrapper> idKeys = HardwareIdTableView.getItems();
if (idKeyEditSelected != null) {
fwData.removeHardwareIdKey(idKeyEditSelected.getIdPattern());
idKeys.remove(idKeyEditSelected);
}
if (!idKeys.contains(key)) {
HardwareIdTitledPane.pseudoClassStateChanged(PseudoClass.getPseudoClass("pane-error"), false);
idKeys.add(new FirmwareData.HardwareIdWrapper(key));
fwData.addHardwareIdKey(key);
}
}
答案 0 :(得分:0)
故障是直的 - 我的重置功能为TableView分配了新列表。由于听众被分配到旧项目列表,因此在我预期时它没有收到通知。