Aide avec les fenêtres modalesSalut,
J'essaie de configurer des boîtes de dialogue dans des scripts existants, le premier est l'emplacement des en-têtes dans les données que j'importe.
Je comprends que ce qui suit me donnera une belle boîte d'affichage :
Headstart = New Window( "Set Header Start Row Value",
<< Modal,
<< Return Result,
Text Box ("Please advise the row on which the header starts"),
variablebox = Number Edit Box ( 2 ),
Button Box ( "OK "),
Button Box ( "Cancel" )
);
Est-ce que le prochain morceau de syntaxe écrit ensuite la réponse de l'utilisateur à Headstart
Write ( Headstart ["variablebox"]);
Comment puis-je réellement utiliser la valeur stockée dans le Headstart, j'ai essayé ce qui suit :
//dt=open(fileopen,private);
dt = Open(
fileopen,
Worksheets( "Lin" ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( "Headstart" ),
Data Starts on Row( 37 ),
Data Starts on Column( 1 ),
Data Ends on Row( 48 ),
Data Ends on Column( 15 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
),
);
Datasource = fileopen;
Re : Aide sur les fenêtres modalesSalut gzmorgan0,
J'ai enfin eu l'occasion de le faire aujourd'hui, cela a fonctionné à merveille, merci beaucoup, je suis nouveau dans le codage dans JMP, et des gens comme vous rendent l'expérience d'apprentissage beaucoup plus facile et beaucoup moins frustrante, je ne peux pas merci assez.
Merci encore
Re : Aide sur les fenêtres modalesSalut gzmorgan,
Je n'ai pas eu le temps de regarder ça aujourd'hui, je le verrai demain.
Merci beaucoup pour votre réponse.
Re : Aide sur les fenêtres modalesCette approche peut être un peu plus facile à comprendre.Mettez les actions que vous voulez voir se produire dans les boutons OK et Annuler.
hw = New Window( "Set Header Start Row Value", <<MODAL></MODAL>
Re : Aide sur les fenêtres modalesMickeyboy,
Si j'ai entré 3, show(Headstart) renvoie la liste {variablebox = 3, Button( 1 )}. À l'exception du bouton, tous les autres éléments de la liste sont une affectation.
Voici deux manières d'obtenir les valeurs d'une boîte de dialogue modale, <
- listname["boxname"] donc Headstart[ "variablebox" ] renvoie 3.
- Si le bouton est 1, supprimez le dernier élément de la liste et eval list(listname), chaque affectation est exécutée et vous pouvez vous référer au nom de la variablebox.
Vous trouverez ci-dessous un extrait du script 7_SimpleModalDialog.jsl, l'un des scripts écrits pour Compagnon JSL, Applications du langage de script JMP, 2e édition. La première instruction show utilise la syntaxe #2 et la seconde show est la syntaxe que vous pouvez utiliser après avoir supprimé le bouton et eval list().
Il existe également des méthodes supplémentaires.
Donc, pour votre exemple, vous pouvez utiliser
Headers Start on Row( Headstart["variablebox"] )
ou utilisez un code similaire à l'exemple ci-dessous.
Names Default to here(1);
usr_info = New Window("Query", << Modal, <<RETURN result=""></RETURN>
Re : Aide sur les fenêtres modalesBonjour,
J'essaie de comprendre pourquoi la structure JMP Button Box ("OK") des exemples fonctionne comme elle le fait.
Est-ce un résultat prédéfini selon lequel si le texte est « OK » alors « Bouton » = 1, et tout autre texte alors « Bouton » = -1.
Mon code est basé sur l'aide JMP et similaire au code gzmorgan de cette discussion.
LineupBox( NCol(1), ButtonBox("OK"), ButtonBox("Cancel"))
If(usr_info["Button"]== -1,
Caption("Aborting..."); Wait(3); Caption(Remove); Throw());
Re : Aide sur les fenêtres modalesDepuis l'aide en ligne de JMP
Note: Les fenêtres modales nécessitent au moins un bouton pour fermer la fenêtre. Vous pouvez utiliserD'ACCORD, Oui, Non, ouAnnulerpour étiqueter les boutons de la fenêtre modale. Si vous n'incluez pas au moins un de ces boutons dans une fenêtre modale, JMP ajoute unD'ACCORDbouton.
La fonctionnalité intégrée d'une fenêtre d'affichage modale renvoie un +1 pour « OK » ou « Oui » et un -1 pour « Annuler » et « Non »