2014-04-22 89 views
0

在樹表視圖中存在具有其他子項的子項目。我需要自定義這些僞根項目的某些單元格的文本。JavaFX8樹表視圖自定義單獨的單元格

有沒有辦法給這些項目分配一個CSS類/樣式?

更新:
好,我知道它有以下cellFactory工作:

treeTblColumnName.setCellFactory(new Callback<TreeTableColumn<FileModel, String>, TreeTableCell<FileModel, String>>() { 
     @Override 
     public TreeTableCell<FileModel, String> call(TreeTableColumn<FileModel, String> param) { 
      TreeTableCell<FileModel, String> cell = new TreeTableCell<FileModel, String>() { 

       @Override 
       protected void updateItem(String t, boolean bln) { 
        super.updateItem(t, bln); //To change body of generated methods, choose Tools | Templates.       

        System.out.println(this.getTableColumn().); 
        Label lbl = new Label(t); 
        lbl.setStyle("-fx-font-weight: bold; -fx-font-size: 14pt; -fx-text-fill: white;"); 
        setGraphic(lbl); 

       } 

      }; 
      return cell; 
     } 

    }); 

現在,我怎麼能類之間區別? FileModel是一個由幾個類實現的接口。在這個cellFactory中,我需要知道什麼類型是當前單元格 - >項目,以便在其上應用不同的樣式。
謝謝。

回答

0

您可以使用instanceof

FileModel fileModel = getTreeTableRow().getItem(); 
if(fileModel instanceof ExeFileModel){ 
    //set style here 
} else if(fileModel instanceof TxtFileModel){ 
    //use another style here 
} 
+0

我不能讓TableRow..only的TableColumn的實例,至少我不知道怎麼樣。 –

+0

請參閱我的編輯。 –

+0

當然!它非常明顯。對不起,沒有注意到它。謝謝! –

相關問題