Auf einer allgemeinen Basis Sie den Wurzelknoten von einem anderen View
mit dem add
Befehl hinzufügen:
add(SomeView::class)
Sie können auch eine View
injizieren und fügen Sie es:
val someView: SomeView by inject()
override val root: borderpane {
center {
add(someView)
}
}
add
ist das gleiche wie tun this += someView
. Was passiert, ist, dass das Framework den Knoten root
der Ansicht findet und an die Eigenschaft children
des übergeordneten Knotens anfügt. Er weiß auch über spezielle Behälter wie die BorderPane
, so tut es das Richtige ist, wenn Sie etwas in der center
Bauer usw.
Die TabPane
jedoch hinzufügen, nimmt Tab
Instanzen, die keine Knoten sind. Sie müssen den Tab mit dem Builder tab
hinzufügen und ihm einige Inhalte zuweisen. Die Erbauer sind klug genug zu verstehen, dass, wenn Sie add
innerhalb eines Tabs tun, sollte es der content
Eigenschaft des Tab zuweisen. Daher können Sie schreiben:
tab("My First Tab") {
add(MyFirstTab::class)
}
Oder wenn Sie bereits eine Instanz des Inhalts haben würden Sie zuweisen möchten:
tab("My First Tab") {
add(myFirstTab)
}
Die MyFirstTab
Klasse ein View
oder Fragment
sein muss.