2012-10-23 54 views
0

在JavaFX應用程序中,屏幕上有兩個文本框和三個選擇框。它們全部以垂直方式放置。Javafx choicebox/dropdown將注意力放在鍵盤向下箭頭上並移動到下一項

在焦點到達第一選擇框時,如果我點擊鍵盤上的向下箭頭,然後不是打開該選擇框的項目,焦點將移動到下一個選擇框並顯示其中的項目。

我試圖通過在第一個選擇框上創建一個按鍵事件方法來手動覆蓋這個方法,仍然是焦點,移動到下一個選擇框。

任何解決方案?

回答

0

將事件過濾器放入包含這些控件的父組件中。

/** 
* prevent move focus on pressing UP/DOWN 
*/ 
pnlRadioButton.addEventFilter(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() { 
    @Override 
    public void handle(KeyEvent event) { 
     if (event.getCode() == KeyCode.UP || event.getCode() == KeyCode.DOWN) { 
      event.consume(); 
     } 
    } 
}); 
+0

將addEventFilter添加到Scene。現在完美工作。謝謝。 – SarkarG

相關問題