条件满足但 if 语句不会触发?

Condition fulfilled but if-statement won't trigger?

我有一个场景,这个功能齐全的按钮叫做 btnRemove,

Button btnRemove = new Button("Remove");
btnRemove.setMinWidth(85);

btnRemove.setOnAction(new EventHandler<ActionEvent>() {

    @Override
    public void handle(ActionEvent t) {
        if(mediaTable.getSelectionModel().isEmpty()){
        txtNotification.setText("Please select an item from the list");
        }
        else{
        medium.remove(mediaTable.getSelectionModel().getSelectedItem());
        }
    }
});

现在我想这样做,以便在按下 DELETE 键时触发 btnRemove 按钮并删除 focus/the 选定元素中的项目。

代码如下:

    scene.setOnKeyReleased(new EventHandler<KeyEvent>() {
        @Override
        public void handle(KeyEvent event) {
            System.out.println(event.getCode());
            if("DELETE".equals(event.getCode())) {
                System.out.println("ATTEMPT ----");
                btnRemove.fire();
            }
        }
    });

当我 运行 它时,每当我按 DELETE 时,控制台输出 DELETE,但它不输出“ ATTEMPT ----”之后。

我看不出它不应触发的任何原因

什么给了??

您正在尝试比较 KeyCodeString。将条件更改为 -

if (KeyCode.DELETE == event.getCode()) { ... }

您在第一个 println 中看到的是 KeyCode 的 toString,显然 returns 它的名称。