2016-05-13 37 views
0

我想用JavaFX TableView模擬數據庫表格GUI,它具有用於表示行狀態的特殊列。下面是從MS Access的例子:如何使自定義列完全像JavaFX中的標題一樣上色?

enter image description here

因此,我想具有完全相同的顏色特列,作爲表頭。我不想明確地猜出風格,我不想繼承已經爲標題設置的顏色。

可能嗎?

+0

的頁面是不是HTML,甚至DOM我猜。他們在內存中有自己的層次結構,在瀏覽器中不可見。 – Dims

+0

哦,對不起。由於您的標籤包含[CSS],我推測這是一個Web應用程序。我的錯。 –

+0

但JavaFX真的使用CSS :)這似乎是模棱兩可的術語本身:) – Dims

回答

0

默認樣式表使用

-fx-background-color: -fx-box-border, -fx-inner-border, -fx-body-color; 
-fx-background-insets: 0, 0 1 1 0, 1 2 2 1; 

的頭。所以,你可以嘗試這樣的:

.row-header-cell { 
    -fx-background-color: -fx-box-border, -fx-inner-border, -fx-body-color; 
    -fx-background-insets: 0, 0 1 1 0, 1 2 2 1; 
} 

.table-row-cell:selected .row-header-cell { 
    -fx-body-color: gold ; 
} 

然後用電池工廠的「行頭」列:

TableColumn<...> rowHeaderColumn = ... ; 
rowHeaderColumn.setCellFactory(col -> { 
    TableCell<...> cell = new TableCell<>(); 
    cell.getStyleClass().add("row-header-cell"); 
    return cell ; 
}); 
相關問題