0

我试过了

public void ChangeFocus(Button browse, final FlowPane mFlowPane)
{
    browse.addEventHandler(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() {

         @Override
         public void handle(KeyEvent event)
         {
             if (event.getCode() == KeyCode.TAB)
             {
                System.out.println("TAB pressed");
                mFlowPane.requestFocus();
                event.consume(); // do nothing
         }
       }
     });

}

在上面的代码中,我在 Flowpane 中设置了一个 ImageView,但是当我按下浏览按钮上的 TAB 按钮时,我无法专注于 imageview 我该如何解决?

4

2 回答 2

2

FlowPane 默认情况下是不可聚焦的。调用 mFlowPane.setFocusTraversable(true) 使其成为遍历故事的一部分

于 2013-01-11T07:50:15.903 回答
2

更多细节来解决它。而不是关注流程窗格,您需要将焦点设置在流程窗格中的内容上,例如文本字段:

flowPane.setOnMouseClicked(new EventHandler<MouseEvent>()
{
   public void handle(MouseEvent mouseEvent)
   {
         textfield.requestFocus();
   }
});
于 2013-05-17T13:40:54.213 回答