JSL : mettre à jour/redessiner le contenu de ListBoxJ'ai un ListBox ("listDisplay") qui est initialisé avec une liste vide ("workingList") sur un formulaire.
Au fur et à mesure que l'utilisateur parcourt le formulaire, de nouvelles entrées sont ajoutées à "workingList". Existe-t-il un moyen de forcer "listDisplay" à se redessiner avec la "workingList" mise à jour à la demande ? J'ai essayé <
Si cela ne fonctionne pas, comment puis-je dire à "listDisplay" d'écraser ses valeurs actuellement affichées avec l'incarnation mise à jour de "workingList" ? J'ai parcouru l'index de script mais je n'ai pas trouvé la fonction.
Une dernière chose ... si quelqu'un connaît un moyen de contourner le besoin de "workingList", je suis tout ouïe. Je suppose qu'il y a quelque chose d'intelligent qui pourrait être fait en appelant <
Exemple de code simplifié :
workingList = {};
New Window( "Example",
<<Modal,
H List Box(
V List Box(
clb = Col List Box( All ),
Button Box( "Add",
workingList = Insert(workingList, clb<<get selected);
//redraw listDisplay?
),
listDisplay = List Box( workingList ),
),
),
);
De plus, pourquoi mon code JSL n'est-il pas mis en surbrillance dans la case ci-dessus ? J'utilise le bouton "Insérer un script JSL" dans la barre d'outils. Y a-t-il autre chose à faire?
Re : JSL : mettre à jour/redessiner le contenu de ListBoxMagnifique, merci encoreRe : JSL : mettre à jour/redessiner le contenu de ListBoxessaye ça
dt = Current Data Table();
New Window( "Example",
//<<MODAL></MODAL>
Re : JSL : mettre à jour/redessiner le contenu de ListBoxMerci, Jim, cela fonctionne à merveille. J'ai saisi votre complément Runs Test et je peux déjà dire qu'il va énormément m'aider avec mon projet actuel.
Pendant que j'ai votre oreille, serait-il possible de faire quelque chose comme redimensionner le nombre de zones de saisie dans un NumberColEditBox en fonction de la taille de liste actuellement affichée de ListBox ? Je n'ai pas trouvé d'exemple de ce comportement ailleurs.
dt = Current Data Table();
New Window( "Example",
<<Modal,
H List Box(
V List Box(
clb = Col List Box(),
clb << append( dt << get column names ),
Button Box( "Lot Column",
LotCold << Append( clb << GetSelected ),
//Increase # of edit boxes available in NumBox so that it's equal to number of entries in LotCold?
),
LotCold = List Box(),
NumBox = NumberColEditBox("",{}),
),
),
);
PS : Vous ne vous souvenez probablement pas de moi, mais nous avions parlé brièvement au sommet jmp il y a quelques mois. C'est super de vous voir ici - vous m'avez donné quelques bons conseils pour travailler dans jsl et travailler en général ("le meilleur travail est accompli le matin"). Merci encore!
Re : JSL : mettre à jour/redessiner le contenu de ListBoxvérifier celui-ci
dt=current data table();
New Window( "Example",
<<MODAL></MODAL>
Regardez l'échange de fichiers pour :
Exécute le test (Wald-Wolf owitz) et JSL Implementa boîte de dialogue JMP Platform
Pour un exemple d'implémentation assez complète de la boîte de dialogue JMP Platform, avec filtrage, rappel, aide, etc. Tout cela peut être porté facilement vers d'autres scripts.