【发布时间】:2015-08-05 16:09:35
【问题描述】:
我有两个 fxml 文件,其中包含两个控制器类 MainController 和 PlaylistController。每个类都有一个 TableView,分别是 table 和 nTable。
table 显示为 TabPane 上的默认选项卡
nTable 应用于使用按钮创建的新选项卡。
我想要的是能够在默认表中选择项目,并在一个操作中将它们添加到新标签上的新表中(我可以使用两个按钮来完成,其中一个在新标签之后被单击被建造)。
我猜我需要确保程序在设置项目之前等待新标签创建,但我不知道该怎么做。
这是我正在使用的方法:
@FXML
PlaylistController pc;
public static ObservableList<Track> newTracklist = FXCollections.observableArrayList();
public void addToNewPlaylist(){
newTracklist.clear();
newTracklist.addAll(table.getSelectionModel().getSelectedItems());
Tab nTab = new Tab();
FXMLLoader nLoader = new FXMLLoader(getClass().getResource("/fxml/fxPlaylist.fxml"));
try {
Parent nRoot = nLoader.load();
nTab.setContent(nRoot);
} catch (IOException e) {
e.printStackTrace();
}
tabPane.getTabs().add(nTab);
nTab.isClosable();
pc.nTable.setItems(newTracklist);
}
【问题讨论】:
标签: java javafx tabs tableview