2
我有一個Tab
與一些內容:ScrollBar
和其他。JavaFX TabPane禁用製表符切換鍵
的ScrollBar
有按鍵事件處理程序:左和右。
但是,如果我按這些按鈕,Tabs
切換,因爲TabPane
也有一個密鑰處理程序。
如何禁用TabPane
的默認事件處理程序或更改切換策略?
我有一個Tab
與一些內容:ScrollBar
和其他。JavaFX TabPane禁用製表符切換鍵
的ScrollBar
有按鍵事件處理程序:左和右。
但是,如果我按這些按鈕,Tabs
切換,因爲TabPane
也有一個密鑰處理程序。
如何禁用TabPane
的默認事件處理程序或更改切換策略?
問題在於默認情況下ScrollBar
不是focus traversable,並且僅針對焦點Node
s纔會觸發關鍵事件。
您可以設置ScrollBar
焦點遍歷:
sb.setFocusTraversable(true);
sb.setOnKeyPressed(e -> {
if (e.getCode().equals(KeyCode.RIGHT))
sb.setValue(sb.getValue()+0.01);
else if(e.getCode().equals(KeyCode.LEFT))
sb.setValue(sb.getValue()-0.01);
});
在這種情況下,每當ScrollBar
集中,關鍵事件的處理。