我是Kolin和TornadoFX的新手,我目前正在试验它的一些功能。 我想使用JFoenix-Library并使用TornadoFX的类型安全CSS功能设置其控件的样式。但我不知道如何在给定JFoenix控件的CSS类的情况下修改样式。
例如,JFXDecorator具有默认的CSS类jfx-decorator
。要更改标题栏的背景颜色,我必须修改类jfx-decorator-buttons-container
。我怎么能用TornadoFX做到这一点?在.css文件中我只会使用
.jfx-decorator-buttons-container {
-fx-background-color: red;
}
TornadoFX可以实现吗?
答案 0 :(得分:2)
您提及了类jfx-decorator
和jfx-decorator-buttons-container
,但您的示例CSS使用了类jfx-decorator-buttons
和container
。我不确定你真正想要哪些课程,但我会添加后两者,因为那样会从你的例子中产生CSS。
class Styles : Stylesheet() {
companion object {
val jfxDecoratorButtons by cssclass()
val container by cssclass()
}
init {
jfxDecoratorButtons and container {
backgroundColor += Color.RED
}
}
}
更新:您更改了问题中的代码,因此以下是生成该输出的更新版本:
class Styles : Stylesheet() {
companion object {
val jfxDecoratorButtonsContainer by cssclass()
}
init {
jfxDecoratorButtonsContainer {
backgroundColor += Color.RED
}
}
}
Camel cased选择器会自动转换为带有连字符的低位。您还可以在cssclass
委托功能中指定确切的名称:
val myCssClass by cssclass("my-slightly-different-css-class")
另请注意,由于backgroundColor
属性接受多个值,因此您必须"添加"使用+=
将颜色列入颜色列表。这是接受多个值的所有属性的通用模式。