:私はこのような何かをしたい
val someView: SomeView by inject()
override val root: borderpane {
center {
add(someView)
}
}
add
は、this += someView
と同じです。ここで起こるのは、フレームワークがビューのroot
ノードを見つけてそれを親ノードのchildren
プロパティに追加することです。また、BorderPane
などの特殊容器を知っているので、あなたが内側に何かを追加するとき、それは正しいことないcenter
ビルダーなど
TabPane
しかし、ノードではないTab
インスタンスを取ります。 tab
ビルダーを使用してタブを追加し、それにコンテンツを割り当てる必要があります。あなたがTab内でadd
を実行する場合、Tabのプロパティcontent
に割り当てる必要があることを理解するのに十分なことです。したがって、あなたが書くことができます。
tab("My First Tab") {
add(MyFirstTab::class)
}
またはすでにアサインしたいコンテンツのインスタンスを持っている場合:
tab("My First Tab") {
add(myFirstTab)
}
をMyFirstTab
クラスはView
かFragment
でなければなりません。