JavaFX:TableView,需要标题样式

时间:2015-01-29 16:42:17

标签: java javafx

我需要显示一个表,其第一列中的元素与第一行中的元素完全相同。众所周知,任何表的第一行称为表头,它有一定的样式(通常是灰色)。我想将这个完全相同的样式应用到我表的第一行。

所以,例如你在这里看到的表: http://java-buddy.blogspot.fr/2013/03/javafx-embed-button-in-tableview.html

我希望与(0,1,2,3,4,5,6,7)的列具有与标题(或第一行)相同的样式,具有(ID,星期一,星期二)的列,周三,周四,周五,行动)

有什么想法吗?

还有一件事,我已经知道如何为列设置样式,即通过设置列的cellFactory。我特别询问如何获得表头的样式。因此,在下面的代码中,我要求String变量“headerStyle”的值...谢谢。

column.setCellFactory(currentColumn -> {
    return new TableCell<CorrelationTableData, String>() {
        @Override
        protected void updateItem(String item, boolean empty) {
            super.updateItem(item, empty);
            if (item == null || item.length() == 0)
                setText(null);
            else {
                setText(item);
                setAlignment(Pos.CENTER);
                if (j == 0 ) {
                    String headerStyle = "";
                    setStyle(style);
                } else {
                    if (item.charAt(0) == '-') 
                        setTextFill(Color.RED); 
                    else
                        setTextFill(Color.BLUE);
                }
            }            
        }
    };
});

1 个答案:

答案 0 :(得分:0)

您可以在caspian.cssmodena.css中找到表格标题样式,将其复制并粘贴到您自己的CSS文件中,然后将其重命名为label-table-cell或类似名称。然后在label-table-cell中应用CellFactory样式。这对我有用。