私のプログラムでゲッターを推測する方法を探しています。私はTextFieldの束を動的に作成しました:JavaFX - TextFieldの配列からTextFieldのフォーカスを取得する
は私のプログラムでfields = new TextField[105];
for (int i = 0; i < fields.length; i++) {
fields[i] = new TextField();
}
それは次のようになります。
このプログラムの目的はの下部にあるリスト内の単語を使用することですあなたはTextFields aka LetterPyramidに記入しなければならない言葉を想像してください。したがって、テキストファイルから私のプログラムに読み込まれた正解とフォーカスされているTextFieldのテキストを比較したいと思います。私が直面している問題は、現在フォーカスされている配列からTextFieldを返すゲッターをどのように見いだすかについての手がかりがないという事実です。それで私を助けることができる人はいますか?
ありがとうございます!ここで
は、あなたが私の問題を理解するためのコードのいくつかのより多くのブロックです。ここ
私は集中のTextField
public TextField getField() {
return theFocusedTextField;
}
に集中フィールドを受信するハンドラを返したいゲッターであります"model"クラスのメソッドcheckInput()を呼び出します。
view.getField().textProperty().addListener((observable, oldValue, newValue) -> {
if (newValue.length() == 1) {
Log.debug("Old value: " + oldValue + "\nNew value: " + newValue);
boolean isCorrect = model.checkInput(newValue);
if (isCorrect) {
view.getField().setStyle("-fx-background-color: darkgreen; -fx-text-fill: white");
} else {
view.getField().setStyle("-fx-background-color: darkred; -fx-text-fill: white");
}
} else if (newValue.equals("")) {
view.getField().setStyle("-fx-background-color: darkred; -fx-text-fill: white");
}
});
現時点では、自分で定義したフィールドセットを受け取ります。答えを確認するためのコードが機能します。助けてくれてありがとう誰にも感謝し、私が自分のやり方を見つけたら、私はここにそれを絶対に投稿します。あなたが定義したと仮定すると、
はありがとうございました!それがトリックでした。 –