2013-10-23 117 views
3

使用javafx場景生成器我hava創建了一個包含少量可編輯列和少量不可編輯列的TableView。如何爲不可編輯的列設置CSS樣式,以便整列顯示爲灰色。 我已經創建瞭如下所示的樣式類,並將其映射到javafx場景構建器中的表列。但它沒有奏效。JavaFX如何使用CSS更改tableview列的背景顏色?

.greyout1 .table-column-cell{ 
-fx-background-color:rgb(243,243,243); 
-fx-border-color:rgb(159,159,159); 
} 

搜索論壇,找不到解決方案樣式tableview columns.Could你請提出一種方法?

回答

5

試試這個和它的工作完美...

 email.setCellFactory(new Callback<TableColumn<CheckDo, String>, TableCell<CheckDo, String>>() { 

     @Override 
     public TableCell<CheckDo, String> call(TableColumn<CheckDo, String> p) { 


      return new TableCell<CheckDo, String>() { 

      @Override 
      public void updateItem(String item, boolean empty) { 
       super.updateItem(item, empty); 
       if (!isEmpty()) { 
        this.setStyle("-fx-background-color:red"); 
        setText(item); 
       } 
      } 
     };