0
在關注Node
時,在JavaFX中調用了什麼Event
?如何處理JavaFX中的節點焦點
我有TextField
,它可以通過鼠標(setOnMouseClicked
)或其他Node
(這裏我的問題來了)的TAB鍵來關注。
我該如何處理第二種焦點的可能性?有沒有辦法如何同時處理兩個?
在關注Node
時,在JavaFX中調用了什麼Event
?如何處理JavaFX中的節點焦點
我有TextField
,它可以通過鼠標(setOnMouseClicked
)或其他Node
(這裏我的問題來了)的TAB鍵來關注。
我該如何處理第二種焦點的可能性?有沒有辦法如何同時處理兩個?
你可以聽focused
property:
TextField tf = new TextField();
TextField tf2 = new TextField();
tf.focusedProperty().addListener((observable, oldValue, newValue) -> {
if (newValue) {
System.out.println("Node 1: Mine!");
}
});
tf2.focusedProperty().addListener((observable, oldValue, newValue) -> {
if (newValue) {
System.out.println("Node 2: Mine!");
}
});
Scene scene = new Scene(new VBox(tf, tf2), 300, 250);
如果你改變對焦點,可以觀察看到2 TextField
「爭論誰擁有焦點」。