Ils sont plusieurs façons d'ajouter un nouvel onglet dynamiquement, mais dans tous les cas, il se résume à ajouter:
- Une étiquette onglet comme un bloc
string!
-t/data
.
- Un correspondant
panel
face object!
à t/pane
bloquer.
Voici un exemple de code entièrement fonctionnel:
tab1: [
below
button 75x25 "Interpret" on-click [do face/parent/pane/2/text ]
area 320x250
]
editor: layout compose/deep/only [
below
button "add tab" [
append t/data "tab 2"
append t/pane make face! [type: 'panel pane: layout/only tab1]
]
t: tab-panel 350x350 ["tab 1" (tab1)]
]
view editor
Quelques remarques:
tab1
définition a été externalisées, de sorte que sa définition peut être réutilisé pour un autre contenu de l'onglet (selon votre demande).
a:
Le mot a été retiré car il ne peut pas être dupliqué, l'accès au visage actuel area
dans le panneau de tabulation actuel est maintenant fait en remontant l'arbre de visage. b:
définition a été abandonnée pour la même raison (et il n'est pas utilisé de toute façon).
Des exemples de comportements dynamiques et de construction de faces dynamiques (sans dialecte VID) sont disponibles here. tab-panel
le type de visage est décrit there.
Pouvez-vous expliquer à quoi sert/deep/only est utilisé dans ce contexte? –
Oh, je ne vois pas, vous l'utilisez avec le ["onglet 1" (tab1)] –