2015-07-04 61 views
0

我想在JavaFX應用程序中禁用焦點系統。這意味着沒有焦點遍歷,沒有控制可以獲得焦點,所以它不會有相應的圖形裝飾,並且永遠不會收到鍵盤事件。所有鍵盤事件應該被根節點(或階段)捕獲和處理。如何完全禁用焦點系統

我該怎麼擴展/重寫禁用焦點系統?

+0

爲了擺脫聚焦亮點,見[good4em的答案](http://stackoverflow.com/a/28032373/1155209),並設置這些值在樣式表的'.root'中。 – jewelsea

+0

第二個要求呢? – ayvango

+0

我對此沒有任何建議,這就是爲什麼我只提供了評論而不是答案。 – jewelsea

回答

0

要處理根節點的所有鍵盤事件,請

root.addEventFilter(KeyEvent.ANY, e -> { 
    // handle keyboard event... 
    e.consume(); 
}); 
+0

看起來像黑客。像重新定義Scene.keyHandler和Scene.requestFocus似乎更加困難 – ayvango

+0

我不認爲這是一個破解;這正是打算使用API​​的方式。 –