2017-01-27 6 views
0

私は映画のためのクラスを持っています。アクタはString []に保存されます。私はSceneBuilderでGUIを作成しました。私はそうのように、各TCの値を設定しています:JavaFX:String []の内容をTableColumnにどのように表示しますか?

tableDirector.setCellValueFactory(new PropertyValueFactory<>("Director")); 
    tableActors.setCellValueFactory(new PropertyValueFactory<>(("actors"))); 
すべての非コレクションのもののために働く

、しかし、私はできない[文字列からいくつかの文字列を置く方法を神聖な数字を出しているすべての愛のために]単一の列に何か不足していますか?あなたが示されていないすべてのコードが正しいと仮定すると、

答えて

0

、あなたはListViewで俳優を表示するセル、またはいくつかの同様のオプションが生じる可能性があります

tableActors.setCellFactory(tc -> new TableCell<Movie, String[]>() { 
    @Override 
    protected void updateItem(String[] actors, boolean empty) { 
     super.updateItem(actors, empty); 
     if (empty || actors == null) { 
      setText(null); 
     } else { 
      setText(String.join(", ", actors)); 
     } 
    } 
}); 

より洗練されたセル工場を行うことができます。

cellFactoryは、既に定義したcellValueFactoryに加えています。

+0

ありがとうございます!それはまさに私が探していたものでした。私はupdateItemのオーバーライドを忘れていました。それは欠けていたリンクだった、あなたは命の恩人です! – PancakeNinja

関連する問題