我有一个带有一些TextArea元素的GUI来显示信息。由于GUI将对keyevents做出反应,因此我将一个EventHandler添加到了scene元素中。因为我不想为每个textarea添加一个EventHandler,所以我禁用它们以防止它们被聚焦,因为那时场景的事件处理程序不再起作用了。现在我有问题,文本显示为灰色而不是黑色,尽管我在css文件中更改了它。你有什么想法为什么文本不是黑色以及我如何解决这个问题?
以下是一些代码:
private val scene =
new Scene {
stylesheets.add("css/style.css")
onKeyTyped = (new EventHandler[KeyEvent] {
def handle(event: KeyEvent) {
...
}
})
...
}
private val description = new TextArea{
text = "some text"
wrapText = true
disable = true
styleClass.add("txtarea")
maxHeight = 400
}
.txtarea:disabled{
-fx-font-size: 18pt;
-fx-text-fill: #000000;
-fx-prompt-text-fill: #000000;
-fx-opacity: 1.0;
-fx-background-color: white;
}
答案 0 :(得分:8)
您还需要为TextArea中嵌入的滚动窗格提供样式:
.txtarea .scroll-pane:disabled{
-fx-opacity: 1.0;
}