2015-04-05 121 views
1
Tab tab1 = new Tab(); 
Tab tab2 = new Tab(); 

如何向场景添加场景? 我想这样做,当选择tab1场景显示和切换到tab2时,它不在那里。JavaFX场景:将场景添加到标签

我试过做tab1.setContent,它必须是一个节点。
我试过dialog.setOwner(tab1),它必须是一个窗口。

TabPane tabPane = new TabPane(); 
    Tab tab1 = new Tab("FIRST TAB"); 
    Tab tab2 = new Tab("SECOND TAB"); 
    tab1.setContent(new VBox(new Text("Scene Below:"))); 
    tab2.setContent(new VBox(new Button("dsadsadassda"))); 
    tabPane.getTabs().addAll(tab1, tab2); 

    final Stage dialog = new Stage(); 
    dialog.initModality(Modality.NONE); 
    dialog.initOwner(tab1); // I can't, it has to be a window 
    dialog.initStyle(StageStyle.UTILITY); 
    dialog.show(); 

    stage.setScene(new Scene(tabPane, 1000, 680)); 
    stage.setMaximized(true); 
    stage.show(); 

回答

2

以及设计取决于你想要做什么,你的情况,你应该指定一个扩展JavaFX的标签和CustomTab因为默认情况下它会举行ScrollablePane或任何窗格你想,这将是必然具有与Tab相同的宽度和高度,因此,当您执行setContent()时,您应该能够传递每个JavaFx的对象,因为您将该对象添加到内部选项卡窗格中。

+0

啊,谢谢!我会尝试的! – 3legit4quit 2015-04-05 11:18:16