D'une manière générale, vous ajoutez le nœud racine d'un autre View
avec la commande add
:
add(SomeView::class)
Vous pouvez également injecter un View
et l'ajouter:
add
est la même chose que de faire this += someView
. Ce qui se passe ici, c'est que le framework trouve le nœud root
de la vue et l'ajoute à la propriété children
du nœud parent. Il connaît aussi des conteneurs spéciaux comme le BorderPane
, il fait la bonne chose lorsque vous ajoutez quelque chose à l'intérieur du center
constructeur, etc.
Toutefois, TabPane
prend Tab
instances, qui ne sont pas des nœuds. Vous devez ajouter l'onglet en utilisant le générateur tab
et lui affecter du contenu. Les constructeurs sont assez intelligents pour comprendre que si vous faites add
à l'intérieur d'un onglet, il doit assigner à la propriété content
de l'onglet. Par conséquent, vous pouvez écrire:
tab("My First Tab") {
add(MyFirstTab::class)
}
Ou si vous avez déjà une instance du contenu que vous aimeriez attribuer:
tab("My First Tab") {
add(myFirstTab)
}
La classe MyFirstTab
doit être un View
ou Fragment
.