JavaFX禁用单个TextField上的默认操作。

问题描述 投票:0回答:1

我在JavaFX中有一个表单,我已经设置了一个默认按钮,这样每当我在编辑任何一个文本字段时按下回车键,绑定到按钮的操作就会被执行。"我的问题是,我想在单个文本字段上禁止这种行为,但我找不到解决方法。

先谢谢你的建议。

EDIT:我发现使用

inputField.onActionProperty().set()

而不是

inputField.onActionProperty().addListener()

作品

java javafx textfield default javafx-11
1个回答
1
投票

你应该能够检索事件目标,并检查它是否是应该避免的事件,类似这样。

final EventTarget target = event.getTarget();

if (code == KeyCode.ENTER && target instanceof TextField) {
    // Do casting stuff then...
    if(target != myTextField)
       doSomething();
    else
       dont();
}
© www.soinside.com 2019 - 2024. All rights reserved.