Hé,
J'essaie de créer un très petit composant d'interface utilisateur en JSL après ne pas l'avoir fait pendant plusieurs années et je me retrouve en difficulté.
J'ai une liste de tables dans une listbox, et je souhaite afficher une description de la table lorsqu'elle est sélectionnée dans la listbox,
Voici un exemple minimal :

tables = {"Table1", "Table2"};
descriptions = {"This is the first table", "This is the second"};
showDescription = Function({},{sel, selIdx, desc},
sel = item_disp_box << Get Selected;
If(Nitems(sel) > 0,
selIdx = loc(tables,sel[1])[1];
desc = descriptions[selIdx];
tb << Set Text(desc);
);
);
nw = new window("Browse Tables",
spacer box(size(0, 5)),
hlistbox(
panelbox("Tables:",
spacer box(size(0, 5)),
item_disp_box = listbox(tables, width(200), nlines(5), max selected(1)),
//item_disp_box << On Something??(showDescription),
),
panelbox("Description of selected table:",
tb = Text Box(""),
),
);
);Vous pouvez voir que j'ai expérimenté une fonction qui affichera la description correcte dans le code ci-dessus et qui fonctionne bien si je l'exécute manuellement.
Mon problème est que je ne trouve pas de bon déclencheur pour cette fonction pour la listbox. J'ai parcouru l'index des scripts et je ne trouve que "à la fermeture".
Existe-t-il un moyen simple de réaliser ce que je recherche ici ?
Merci d'avance,
Daniel
Voici le <
Names Default To Here( 1 );
New Window( "Example",
lb = List Box( {"First Item", "Second Item", "Third Item", "Fourth Item"}, width( 200 ), max selected( 2 ), nlines( 5 ) ),
Text Box( "" )
);
lb << Set Function( Function( {thisBox}, (thisBox << sib) << Set Text( Char( thisBox << get selected ) ) ) );Vous disposez de trois options : Lors du changement, << Définir la fonction et << Définir le script. Vous pouvez trouver des exemples pour tout cela à partir de l'index de script (les exemples peuvent ne pas inclure de zone de liste, mais ils devraient fonctionner de la même manière que les autres zones d'affichage utilisées pour la démonstration). J'utiliserais très probablement << Set Function car il fournit une référence à "lui-même" (listbox appelant la fonction).
Merci à vous deux! La fonction Set a fonctionné à merveille 