/ /テキストフィールドに入力すると、キーストロークのEnterキーを押してJavaFXのボタンを有効にできます - javafx-2、javafx、keyboard-events、scenebuilder

テキストフィールドに入力すると、EnterキーストロークでJavaFXのボタンを有効にできます - javafx-2、javafx、keyboard-events、scenebuilder

Googleの検索ボックスに入力するなどENTERを押すと検索が有効になります

私はちょうどJavaFXとシーンに導入されましたビルダーは数日前に私はここで基礎を学んでいます。私はJavaFXの最新バージョンを持っていて、シーンビルダを使用してアクションイベントを容易にしています。シーンビルダのコーディングパネルのキーボードセクション、特に "On Key Released"イベントに焦点を当てています。

ここでは、私が何をしようとしているかについての大まかな考えです:

@FXML
Text Field theTextField;

@FXML
Button theButton;

@FXML
void ButtonPressed() {
//do stuff here
}

@FXML
//when ENTER is pressed the button is activated
void textFieldEnterPressed() {
ButtonPressed();
}

回答:

回答№1は8

あなたの FXML ファイルを追加する onKeyPressed ハンドラ

 <TextField fx:id="yourTextField" onKeyPressed="#handleEnterPressed">

ハンドラを実装する Controller

@FXML
public void handleEnterPressed(KeyEvent event)
if (event.getCode() == KeyCode.ENTER) {
// do some actions
}
}

回答№2のための5

TextFieldでは、Enterキーを押すと、 onAction。 Javaコードでは、次のものを追加できます。

@FXML
private void handleTFAction(ActionEvent event) {
TextField source = (TextField)event.getSource();
System.out.println("You entered: "+source.getText());
}

FXML(またはJavaFX SceneBuilderデザイナー)では、TextFieldのOnActionイベントに接続します.FXMLでは、次のようになります。

<TextField onAction="#handleTFAction" ... />