如何重绘JAVA FX 2.2中的窗口(舞台)

时间:2012-10-25 08:30:43

标签: java javafx javafx-2

我需要在选择组合框元素时重新绘制一个窗口。 如何重绘JAVA FX 2.2中的窗口(舞台)?

以下是我的代码

functionComboBox.valueProperty().addListener(new ChangeListener<String>() {
    @Override public void changed(ObservableValue ov, String t, String t1) 
    {
        showFunctionParamters(t1);
    }
    private void showFunctionParamters(String methodName) 
    {
        gridPaneParameters = new GridPane();
        gridPaneParameters.setPadding(new Insets(20, 0, 0, 50));
        gridPaneParameters.setHgap(10);
        gridPaneParameters.setVgap(4);
        int i = 2; 
        parameterList = methodAttrMap.get(methodName);
        Iterator<String> itrParameterList = parameterList.iterator();
        while(itrParameterList.hasNext())
        {
            //TODO allow the user to enter the values for the parameters 
            Label parameterName = new Label(itrParameterList.next()); 
            TextField parameterTextField = new TextField();
            gridPaneParameters.add(parameterName, 1, i);
            gridPaneParameters.add(parameterTextField, 2, i);
            i++;
        }
        pane.getChildren().add(gridPaneParameters);
    }
});

1 个答案:

答案 0 :(得分:13)

由于您的代码在运行时向窗格添加了新组件,因此您可能需要:

pane.requestLayout();