TextArea的JavaFX CSS样式不起作用
我正在编写一个简单的JavaFX应用程序,但我无法使用一些CSS样式。 问题是我的TextArea
的-fx-background-color
属性。
这是相关的CSS:
.text-area { -fx-font-family: Consolas; -fx-highlight-fill: #00ff00; -fx-highlight-text-fill: #000000; -fx-text-fill: #00ff00; -fx-background-color: #000000; }
所有字段都按预期执行,但-fx-background-color
除外,它显然什么都不做。 我仍然有默认的白色背景。 正如您在图片中看到的,下面的TextField
具有相同的CSS,但确实应用了预期的背景颜色。
我的问题的图片
有什么线索吗?
您需要设置内容:
.text-area .content{ -fx-background-color: black; }
…
或者看看这个答案可能是: JavaFX 8中textarea的透明背景
我遇到了同样的问题:我做了什么:
-
创建了一个名为console.css的.css文件,其中包含以下内容:
.text-area { -fx-font-family: Consolas; -fx-font-size: 15; -fx-text-fill: #ffffff; -fx-display-caret:true; } .text-area .content { -fx-background-color: #000000; }
-
在我的场景上叫:
scene.getStylesheets()。add(this.getClass()。getResource(“/ stylesheets / console.css”)。toExternalForm());
说明:
– 第二部分只是加载css的东西。 (不重要的)
– 第一部分(css):你必须检查哪个属性必须应用于对象的哪个部分。 例如:-fx-font-family在.text-area上,但-fx-background-color在.content上。 理解这个概念可以让你理解JavaFx中的所有css内容。
JavaFX-CSS-Docu (推荐)。
好编程:-)
你在使用场景构建器吗?
我尝试了你使用的相同的CSS,一切正常,也许这是你的版本中的一个错误。
我测试了它的文本区域和文本字段。
在JavaFx中,TextArea有两个子目录(Content&scrollPane),每个结构都具有TextInputControl的所有属性:
text-area{ } text-area .content { } text-area.scroll-pane { }