Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JAVAFX使用Map填充多个TableView<;字符串,字符串>;按键_Java_Javafx - Fatal编程技术网

JAVAFX使用Map填充多个TableView<;字符串,字符串>;按键

JAVAFX使用Map填充多个TableView<;字符串,字符串>;按键,java,javafx,Java,Javafx,我有4-5个TableViews和一个Map(从PDF表单创建)。我需要使用映射(第一个字符串)中的键和该键的值(第二个字符串)填充表视图 来自FXML的定义(对于一个表): 然后: ObservableList<Map.Entry<String,String>> listData = FXCollections.observableArrayList(Zapytanie_Parametry.entrySet()); INFO_TABLEVIEW = new TableV

我有4-5个
TableView
s和一个
Map
(从PDF表单创建)。我需要使用
映射
(第一个
字符串
)中的键和该键的值(第二个
字符串
)填充
表视图

来自FXML的定义(对于一个表):

然后:

ObservableList<Map.Entry<String,String>> listData = FXCollections.observableArrayList(Zapytanie_Parametry.entrySet());
INFO_TABLEVIEW = new TableView<>(listData);

INFO_TABLEVIEW.getColumns().setAll(COLUMN_INFO_NAME,COLUMN_INFO_VALUE);
observeListData=FXCollections.observearraylist(Zapytanie_Parametry.entrySet());
INFO_TABLEVIEW=新的TABLEVIEW(listData);
INFO_TABLEVIEW.getColumns().setAll(列信息名称、列信息值);

我想知道是否有人能帮助我正确理解如何做到这一点。

我可以通过对键和值进行div来分隔列表,然后使用Table.setItems(list)。但也许有另一种方法可以通过一个地图按键切换而不使用其他列表来实现这一点?
for (Map.Entry<String, String> entry:Param.entrySet()){
    switch (entry.getKey().substring(0,3)){
    case "INF":{
        if (entry.getKey().substring(5,8).contentEquals("BEG")){
            try{
                System.out.println("BEG"); //ok

                COLUMN_INFO_WST_NAME.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<Map.Entry<String, String>, String>, ObservableValue<String>>() {
                        @Override
                        public ObservableValue<String> call(TableColumn.CellDataFeatures<Map.Entry<String, String>, String> p) {
                            System.out.println("AAAA"); //not enter this loop
                            return new SimpleStringProperty(p.getValue().getKey());
                        }
                    });
            }
            catch (Exception ex){
                System.out.println(ex.getMessage());
            }
        }
    }
    }
}
ObservableList<Map.Entry<String,String>> listData = FXCollections.observableArrayList(Zapytanie_Parametry.entrySet());
INFO_TABLEVIEW = new TableView<>(listData);

INFO_TABLEVIEW.getColumns().setAll(COLUMN_INFO_NAME,COLUMN_INFO_VALUE);