2014-06-09 102 views
1

在我的节目,我有这样的css文件:JavaFX的表行不变色

.error-row { 
    -fx-text-fill: red; 
} 

如果在表视图行是错误的,它的文字应该是红色的。如果是错误,我在工厂做了getStyleClass().add("error-row");,但它不起作用。如果我在css .error-row中添加诸如背景颜色和字体重量之类的内容,它们将起作用,但不起作用。有人知道为什么

+0

你试过'颜色:red'? – LcSalazar

+0

正常的css“命令”(我不知道如何调用,sory),因为这是不行的,因为是javafx,但我仍然尝试,并没有工作。 – user2748531

+0

你能告诉你如何设置CSS类吗?您是使用自定义排工厂还是细胞工厂? –

回答

2

我猜你在TableView上使用的是rowFactory。默认的css样式表定义表格单元格上的文本填充,它是表格行的后代,因此默认值会覆盖您在该行上设置的值。

尝试

.error-row .table-cell { 
    -fx-text-fill: red ; 
} 
+0

我忘了说它是'rowFactory'而不是'cellFactory'。我是JavaFX的新手,并不知道这一点。它的工作,感谢您的帮助。 – user2748531