我想在Tornadofx应用程序中访问默认颜色,例如-fx-focus-color
。此属性是在默认CSS(例如,modena.css)中预定义的。
我尝试使用focusColor
属性访问该属性,该属性为null
,因此在显式设置之前,在访问该属性时会引发强制转换异常。
此外,我还尝试通过unsafe
函数和raw
来设置属性,该方法可以工作,但解决方案不理想。
我可以这样覆盖-fx-focus-color
:
class MyStyle : StyleSheet() {
init {
"*" {
focusColor = c("red")
}
}
}
但未设置该属性时,我无法访问该属性:
class MyStyle : StyleSheet() {
init {
label {
backgroundColor = focusColor // error because not initialized
}
}
}
通过unsafe
设置属性:
unsafe("-fx-border-color", raw("-fx-accent")) // works but is cumbersome