Тип-безопасный CSS, не влияющий на контроль tornadofx - PullRequest
0 голосов
/ 02 апреля 2019

Я пытаюсь следовать руководству по безопасному типу CSS.Встроенное моделирование работает, но я могу заставить его работать с отдельным классом таблиц стилей.Я пробовал для каждого типа контроля в моей программе, включая списки, кнопки, метки и текстовые поля.Стиль не применяется вообще.Моя кнопка выглядит как обычная кнопка без границ или поворота.

Я сократил свою программу до одной кнопки и точного кода из руководства в моем классе таблиц стилей.

Мой основной вид, таблица стилей и приложение.

import tornadofx.*
import com.lordxarus.subtitler.app.MyStyles

class MainView : View("Subtitler!") {
    override val root = vbox {
        button("TEST") {
            addClass(MyStyles.tackyButton)
        }
    }
}
class MyStyles : Stylesheet() {

    companion object {
        val tackyButton by cssclass()

        private val topColor = Color.RED
        private val rightColor = Color.DARKGREEN
        private val leftColor = Color.ORANGE
        private val bottomColor = Color.PURPLE
    }


    init {
        tackyButton {
            rotate = 10.deg
            borderColor += box(topColor,rightColor,bottomColor,leftColor)
            fontFamily = "Comic Sans MS"
            fontSize = 20.px
        }
    }
}
class Subtitler: App(MainView::class, MyStyles::class) 

1 Ответ

1 голос
/ 02 апреля 2019

Код работает нормально, поэтому я предполагаю, что вы используете плагин TornadoFX IDEA и случайно запустили View вместо запуска класса App.Плагин позволяет вам запускать представления, даже не определяя класс приложения, но когда вы делаете это, фреймворк не может знать, что вы хотите загрузить таблицу стилей, указанную в вашем классе приложения.Вместо этого запустите класс Subtitler, и вы увидите, что ваши стили применены:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...