了JavaFx:在对话框中,两个文本框获得焦点,而不是一个(JavaFx: After dialog

2019-10-17 17:23发布

以下问题:在的ChangeListener指令导致两个TextField的对话后获得焦点的行为。

当Postleitzahl失去焦点是打开的对话框。 如果单击确定,只是第一个文本框有获得焦点。 但真正发生的是,下面的收益文本字段注意力过多。

方法“controlMinChar”设置数字的最小量。 该方法setMinCharacter使用方法和使用该focusedProperty

  private void setMinCharacter(){

    plz.focusedProperty().addListener(new ChangeListener<Boolean>() {

        @Override
        public void changed(ObservableValue<? extends Boolean> ov, Boolean lostFocus, Boolean getFocus) {

            if(lostFocus){

                     generalControler.controlMinChar(plz, 5, 
                    (Stage) anchorPane.getScene().getWindow(), 
                    errorMessage);

            }

        }
    });


}

我希望你能帮助我。 非常感谢你。

Answer 1:

问题是: http://javafx-jira.kenai.com/browse/RT-28363

解决方法:

    tf1.focusedProperty().addListener(new ChangeListener<Boolean>() {
        @Override
        public void changed(ObservableValue<? extends Boolean> ov, Boolean lostFocus, Boolean getFocus) {
            if (lostFocus) {
                Platform.runLater(new Runnable() {
                    @Override
                    public void run() {
                        tf1.requestFocus();
                    }
                });
            }
        }
    });


文章来源: JavaFx: After dialog, two textfields gains focus instead one
标签: javafx-2