【发布时间】:2026-01-11 16:50:01
【问题描述】:
我可以为 JavaFX 元素指定更多的 CSS 属性吗?我已经注意到https://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cssref.html#introlimitations 有一些限制,但是这个列表是我可以设置的所有属性吗?
例如,除了使用 .setFill 之外,我不能更改节点的背景颜色?
【问题讨论】:
-
当然你可以用
-fx-background-color改变背景颜色。它在您发布的链接上!除非你修改 javafx CSS 引擎,否则我认为你不能创建其他属性 -
什么样的
Node?不同的节点有不同的属性集。您可以使用-fx-background-color设置Region(或子类)的背景颜色,并且可以使用-fx-fill设置Shape(或子类)的填充。每个Node类型的属性都记录在您链接的文档中。定义自己的节点子类并支持自定义 CSS 属性是可能的(尽管非常复杂)。您能否准确说明您要做什么? -
@James_D 我试图为扩展 Circle 类的对象设置背景颜色。我在创建它之后所做的是 object.setStyle("-fx-background-color: ##96ceb4");但它没有用。
-
阅读文档。圈子没有
-fx-background-color属性。你需要object.setStyle("-fx-fill: #96ceb4;");。由于 circle 是Shape的子类,因此它具有-fx-fill属性。