【发布时间】:2018-09-27 18:28:50
【问题描述】:
我似乎无法让这段代码为 RadioButtons 工作。它不断给我一个新的 ChangeListener 错误,错误是“ChangeListener 类型不是通用的;它不能用参数参数化”。但是我在下面找不到任何与我不同的示例。
group.selectedToggleProperty().addListener(new ChangeListener<Toggle>() {
public void changed(ObservableValue<? extends Toggle> ov, Toggle old_toggle, Toggle new_toggle) {
if (patrolBut.isSelected()) {
placeShipVert(patrolBoat, r, playerBoard, shapes);
} else if (destroyerBut.isSelected()) {
placeShipVert(destroyer, r, playerBoard, shapes);
}
}
});
感谢您的帮助。
【问题讨论】:
-
您确定要导入 JavaFX
ChangeListener? Swing API 中定义的另一个ChangeListener不是通用的(除了不兼容)。 -
我都试过了,但错误仍然存在。使用 javafx.beans.value.ChangeListener 时,“ObservableValue”下还有一个错误。
-
它的错误是“ObservableValue 无法解析为一个类型”,我看不到任何其他方式可以调用该方法。
-
你导入
ObservableValue了吗?另外,考虑使用 lambda 表达式,如答案:addListener((ov, oldToggle, newToggle) -> { ... });然后你不需要导入任何这些:)。 -
你是对的,没有导入ObservableValue,感谢帮助我现在感觉很傻哈哈。
标签: java javafx radio-button