Comment initialiser les choses dans une fenêtre modale ?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />J'ai une fenêtre modale et je dois prédéfinir certaines valeurs dans une liste déroulante.Je peux le faire dans une fenêtre non modale mais pas dans la fenêtre modale.Quelqu'un sait comment ?
Voici un exemple tiré du manuel JSL.Il s'agit d'une fenêtre non modale, donc l'élément " Deux " est présélectionné dans la liste déroulante.
Nouvelle fenetre ( "Exemple" ,
CB = Boîte combo (
{ "Un" , "Deux" , "Trois" } ,
sélection = CB << ObtenirSélectionné () ;
Imprimer ( « Sélectionné : » || sélection ) ;
)
) ;
CB << Ensemble ( 2 ) ;
Si je le change en fenêtre modale, je ne peux pas prédéfinir " Deux " pour la combo :
Nouvelle fenetre ( "Exemple modal" , << modal ,
CB = Boîte combo (
{ "Un" , "Deux" , "Trois" } ,
sélection = CB << ObtenirSélectionné () ;
Imprimer ( « Sélectionné : » || sélection ) ;
)
) ;
CB << Ensemble ( 2 ) ;
Re : Comment initialiser les choses dans une fenêtre modale ?Ou ca:
Nouvelle fenêtre( "Exemple", <
cb = Zone de liste déroulante (
{"Un deux trois"},
<
<
)
);
Re : Comment initialiser les choses dans une fenêtre modale ?Oui, je vois le problème maintenant... la méthode fonctionnerait toujours pour initialiser la zone de liste déroulante mais le script devrait être différé jusqu'à ce que l'utilisateur ferme la fenêtre... ce qui, dans la plupart des cas, est ce que nous souhaitons pour une fenêtre modale :
Nouvelle fenêtre( "Exemple", <
cb = Combo Box( {"Un", "Deux", "Trois"}, <
);
sélection = cb << GetSelected();
Print( "Sélectionné : " || sélection );
Re : Comment initialiser les choses dans une fenêtre modale ?Merci MS, cela fonctionne très bien.Dave désolé mais votre solution ne fonctionne pas.Lorsque vous placez du code dans une définition de zone de liste déroulante, il n'est exécuté que lorsque vous modifiez une valeur dans la zone de liste déroulante.
Re : Comment initialiser les choses dans une fenêtre modale ?L'indice réside dans la syntaxe utilisée pour le message modal lui-même, et en fait, c'est généralement vrai pour les boîtes d'affichage, qu'elles fassent partie ou non de fenêtres modales : vous pouvez ajouter des messages à la boîte d'affichage elle-même :
cb = ComboBox( maliste, <
Dave
Re : Comment initialiser les choses dans une fenêtre modale ?Placez le message à l'intérieur du code de la fenêtre. Je suppose que l'exécution du code s'arrête jusqu'à ce qu'une fenêtre modale soit fermée.
Nouvelle fenetre ( "Exemple modal" , << modal ,
CB = Boîte combo (
{ "Un" , "Deux" , "Trois" } ,
sélection = CB << ObtenirSélectionné () ;
Imprimer ( « Sélectionné : » || sélection ) ;
) , CB << Ensemble ( 2 )
) ;