簡體   English   中英

TornadoFX:具有其他庫的類型安全CSS

[英]TornadoFX: Type-Safe CSS with other libraries

我是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有可能嗎?

您提到了jfx-decoratorjfx-decorator-buttons-container ,但是示例CSS使用了jfx-decorator-buttonscontainer 我不確定您真正想要的是哪個類,但是我將添加后者,因為這將從您的示例中生成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
        }
    }
}

駝峰式選擇器會自動轉換為帶連字符的小寫字母。 您還可以在cssclass委托函數中指定確切的名稱:

val myCssClass by cssclass("my-slightly-different-css-class")

還要注意,由於backgroundColor屬性接受多個值,因此必須使用+=將顏色“添加”到顏色列表中。 這是接受多個值的所有屬性的通用模式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM