これは私の問題です。私はコントローラのinitialize(URL、ResourceBundle)関数に以下のコードを持っています。 setOnMouseClickedは、特定の行をクリックすると正しく呼び出されますが、setOnKeyPressedは呼び出されません。私はここで何が欠けていますか?TableRow setOnKeyPressedを使用していない
tblView.setRowFactory(tv -> {
TableRow<Entry> row = new TableRow<Entry>();
row.setOnMouseClicked((MouseEvent e) -> {
if ((!row.isEmpty()) && (e.getButton() == MouseButton.PRIMARY) && (e.getClickCount() == 2)) {
openEntryEditor(row);
e.consume();
}
});
row.setOnKeyPressed((KeyEvent e) -> {
if ((!row.isEmpty()) && (e.getCode() == KeyCode.ENTER)) {
openEntryEditor(row);
e.consume();
}
});
return row;
});
興味深い。私はGui:Pに誤解されました。 TableRowにはフォーカスがあったが、矢印キーをクリックするか、矢印キーで移動したときにハイライト表示されていたためだ。 – user9985