Suspendre l'exécution du script avec la boîte de boutons modale<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut,
J'ai besoin d'aide pour insérer une pause contrôlée par l'utilisateur dans l'exécution du script.J'utilise JMP9.
J'ai une boucle qui s'exécute sur plusieurs fichiers et exécute la plate-forme Nonlinear Fit sur chacun.Je souhaite ajouter une boîte à boutons sur la plate-forme Nonlinear Fit qui mettra en pause l'exécution du script afin que l'utilisateur puisse confirmer que les paramètres d'ajustement sont corrects avant de passer à l'analyse suivante.Quelle est la meilleure façon de mettre cela en œuvre ?Certaines de mes tentatives sont ci-dessous.
Merci d'avance pour l'aide!
/*
// Cela fonctionne, mais n'interrompt pas l'exécution du script.
ajustement non linéaire <
Button Box( "Cliquez ici lorsque l'ajustement est finalisé.",
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit<< Journal ; parameters = nonlinearfit[Number Col Edit Box( 5 )] <<
Transformer en tableau de données ; )
)
);
// Ceux-ci ne fonctionnent pas.
ajustement non linéaire <
Button Box( "Cliquez ici lorsque l'ajustement est finalisé.", << modale,
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit<< Journal ; parameters = nonlinearfit[Number Col Edit Box( 5 )] <<
Transformer en tableau de données ; )
)
);
ajustement non linéaire <
Button Box( "Cliquez ici lorsque l'ajustement est finalisé.",
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit<< Journal ; parameters = nonlinearfit[Number Col Edit Box( 5 )] <<
Transformer en tableau de données ; ) << Mode
)
);
ajustement non linéaire <
Button Box( "Cliquez ici lorsque l'ajustement est finalisé.",
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit<< Journal ; parameters = nonlinearfit[Number Col Edit Box( 5 )] <<
Transformer en tableau de données ; )
) << Mode
);
*/
Re : Suspendre l'exécution du script avec la boîte de boutons modaleBrillant!Merci beaucoup MS!
Re : Suspendre l'exécution du script avec la boîte de boutons modaleJe ne sais pas comment le bouton doit être utilisé. Le problème avec une fenêtre modale est que rien ne se passe (par script ou de manière interactive) jusqu'à ce que OK soit cliqué. Il peut également être difficile d'appuyer sur le bouton dans une fenêtre non linéaire particulière car de nouvelles fenêtres sont créées et encombrent l'écran.
Vous trouverez ci-dessous une solution permettant à l'utilisateur de cliquer sur "Aller" pour terminer l'ajustement non linéaire, d'examiner les résultats et, une fois terminé, de cliquer sur un bouton qui enregistre les résultats (dans le journal et le tableau) et passe au tableau suivant. Cette approche fonctionnera-t-elle dans votre environnement ?
grandeClasse = Ouvrir ( "$SAMPLE_DATA/Grande classe.JMP" ) ;
grandeClasse << Nouvelle colonne ( "estimation de la hauteur" ,
Numérique ,
Continu ,
Format ( "Meilleur" , 12 ) ,
Formule ( Paramètre ( { un = 1 , b = 1 , c = 1 , d = 1 } , un * ( : lester + b ) + c * : lester * Sinus ( d * : lester ) ) )
) ;
tables de données = { grandeClasse , grandeClasse , GrandeClasse } ; //Liste des tables de données à boucler
nfichiers = N articles ( tables de données ) ; // nombre de tables
numéro de table = 1 ;
paramètres = Nouveau tableau ( "Paramètres" , Nouvelle colonne ( "Base de données" , personnage ) ) ; // Une table pour enregistrer les paramètres de tous les ajustements
non lin = Expr (
ajustement non linéaire = Nouvelle fenetre ( "Ajustement non linéaire" ,
hlb = H Zone de liste (
Éval ( tables de données [ numéro de table ] ) << Non linéaire ( Oui ( : hauteur ) , X ( : estimation de la hauteur ) , Newton ) ,
Zone de liste V (
Zone de texte ( "Cliquez ci-dessous lorsque l'ajustement est finalisé" ) ,
Boîte à boutons ( "Enregistrer les résultats et exécuter le tableau suivant" ,
ajustement non linéaire [ Boîte de contour ( 2 )] << Fermer ( 1 ) ;
ajustement non linéaire [ Boîte de contour ( 1 )] << Journal ;
paramètres_temp = ajustement non linéaire [ Zone d'édition de la colonne numérique ( 3 )] << Transformer en tableau de données ;
nomcol = paramètres_temp << Nouvelle colonne ( "Base de données" , Personnage , définir chaque valeur ( Éval ( tables de données [ numéro de table ] ) << obtenir le nom ) ) ;
nomcol << déménager à ( d'abord ) ;
paramètres << Enchaîner ( paramètres_temp , Ajouter au premier tableau ) ;
ajustement non linéaire << Fermer la fenêtre ;
Fermer ( paramètres_temp , pas de sauvegarde ) ;
Si ( numéro de table < nfichiers ,
numéro de table ++ ;
non lin ; // Tableau suivant
ajustement non linéaire << Amenez la fenêtre à l'avant ;
) ;
)
)
)
)
) ;
non lin ;
Re : Suspendre l'exécution du script avec la boîte de boutons modaleVoici un exemple de script pour faciliter le débogage.
/*
bigClass = Open( "$SAMPLE_DATA/Big Class.JMP" );
bigClass << Nouvelle colonne( "estimation de la hauteur",
numérique,
Continu,
Format( "Meilleur", 12 ),
Formule( Paramètre( {a = 1, b = 1, c = 1, d = 1}, a * (:poids + b) + c * :poids * Sinus( d * :poids ) ) )
);
nonlinearfit = New Window( "Ajustement non linéaire", bigClass << Nonlinear( Y( :height ), X( :height estimate ), Newton ) );
ajustement non linéaire <
Button Box( "Cliquez ici lorsque l'ajustement est finalisé.",
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit << Journal ; parameters = nonlinearfit[Number Col Edit Box( 3 )] <<
Transformer en tableau de données ; )
)
);
Nouvelle fenêtre( "Zone de texte", <
*/