为什么选择VBox.getChildren.addAll();没有工作按钮点击?

时间:2016-08-07 16:04:03

标签: javafx

我试图将参数传递给VBox的其他孩子。让我来描述一下这个问题。 这是onMouseClicked代码。

public class generatingCombination {

    public static void main(String[] args) {
        String s="ABCDEF";
            printArray(s,0,new char[3], new boolean[s.length()]);

    }

    static void printArray(String s,int x,char []arr, boolean [] used){
        if(x==3){
            System.out.println(Arrays.toString(arr));
            return;
        }
        else
        {
            for( int i=0;i<s.length();i++){
                if(used[i]) continue;

                arr[x]=s.charAt(i);
                used[i]=true;
                printArray(s, x+1, arr,used);
                used[i]=false;
                printArray(s, x+1, arr,used);

            }
        }

    }
}

这是gotoViewStudent();代码。

viewButton.setOnMouseClicked((event)->{
    try{
      FXMLLoader loader = new FXMLLoader(getClass().getResource("/students/Students.fxml"));
      loader.load();
      StudentsController ctrl = loader.getController();
      ctrl.gotoViewStudent();
    }
    catch(IOException e){
         e.printStackTrace();
    }

});

切换器是一个VBox。

public void gotoViewStudent(){
        try {
            System.out.println("get");
            switcher.getChildren().setAll(FXMLLoader.load(this.getClass().getResource("/students/ViewStudent.fxml")));
            System.out.println("set");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

这是GUI视图。

enter image description here

现在让我来描述一下这个问题。 当我点击左侧添加学生时,搜索学生。对VBox完美改变。但是当我在搜索后单击“查看”按钮时,它无法正常工作。

这是设计。

@FXML private VBox switcher;

以下是与之关联的控制器。

<BorderPane fx:controller="controller.students.StudentsController" xmlns:fx="http://javafx.com/fxml/1">
    <left>
        <VBox id="leftBar">
            <Label styleClass="heading" text="Students">
            </Label>
            <Label fx:id="menuAddStudent" styleClass="leftMenuItem" text="Add Student" onMouseClicked="#switchToAddStudents">
                <graphic>
                    <SVGPath styleClass="leftMenuIcon" content="M15 14.016c2.672 0 8.016 1.313 8.016 3.984v2.016h-16.031v-2.016c0-2.672 5.344-3.984 8.016-3.984zM6 9.984h3v2.016h-3v3h-2.016v-3h-3v-2.016h3v-3h2.016v3zM15 12c-2.203 0-3.984-1.781-3.984-3.984s1.781-4.031 3.984-4.031 3.984 1.828 3.984 4.031-1.781 3.984-3.984 3.984z"/>
                </graphic>
            </Label>
            <Label fx:id="menuSearchStudent" styleClass="leftMenuItem" id="paddingLeft" text="Search Student" onMouseClicked="#switchToSearchStudents">
                <graphic>
                    <SVGPath styleClass="leftMenuIcon" content="M9.516 14.016c2.484 0 4.5-2.016 4.5-4.5s-2.016-4.5-4.5-4.5-4.5 2.016-4.5 4.5 2.016 4.5 4.5 4.5zM15.516 14.016l4.969 4.969-1.5 1.5-4.969-4.969v-0.797l-0.281-0.281c-1.125 0.984-2.625 1.547-4.219 1.547-3.609 0-6.516-2.859-6.516-6.469s2.906-6.516 6.516-6.516 6.469 2.906 6.469 6.516c0 1.594-0.563 3.094-1.547 4.219l0.281 0.281h0.797z"/>
                </graphic>
            </Label>
        </VBox>
    </left>
    <center>
        <VBox id="rightContent" fx:id="switcher">
            <Label text="Students Static"/>
        </VBox>
    </center>
    <stylesheets>
        <URL value="@../../resource/stylesheets/base.css"/>
    </stylesheets>
</BorderPane>

0 个答案:

没有答案