Comment utiliser les boîtes radioJe suis tout nouveau dans les scripts JMP et j'essaie d'auto-apprendre. J'ai créé une boîte radio :
New Window( "Example",
panelbox("Confidence Interval",
rb = Radio Box(
{"90%", "95%", "98%", "99%"},
Show( rb << Get() ),
),
Ma question actuelle est comment puis-je utiliser la variable rb?
J'ai essayé cette instruction if(then):
If(
:rb == "95%",
// then
:x = 1.96,
:rb == "90%", :x = 1.645,
:rb == "98%", :x = 2.326,
:rb == "99%", :x = 2.576,
)
mais obtenez ce message d'erreur : "Name Unresolved: rb in access or evaluation of 'rb' , :rb/*###*/"
Voici tout le code.
Names Default To Here( 1 );
computeResults = Expr(
If(
:rb == "95%",
// then
:x = 1.96,
:rb == "90%", :x = 1.645,
:rb == "98%", :x = 2.326,
:rb == "99%", :x = 2.576,
)
);
New Window( "Example",
Panel Box( "Confidence Interval",
rb = Radio Box(
{"90%", "95%", "98%", "99%"},
Show( rb << Get() ),
),
),
H Center Box( Button Box( "Calculate Minimum Sample Size", computeResults ) ),
V List Box( Text Box( "" ), ciolb = Panel Box( "Result", x = Number Edit Box( "" ) ) )
);
Merci pour toute aide ou suggestion. Je vais lire le manuel de script et vérifier plus tard.
Re : Comment utiliser les Radio BoxOuais, je vois ça. Je voulais juste vérifier la théorie. Merci encore.
Re : Comment utiliser les Radio BoxVous pouvez le faire. Mais dans votre cas, puisque x est utilisé dans votre fenêtre d'affichage, vous devez comprendre que x ne pointera plus vers la zone d'édition numérotéeRe : Comment utiliser les Radio BoxJe pense avoir compris ce qui se passe. Espérons que DERNIÈRE question.
Si je définis une variable, disons x = 3, il semble que je puisse "réinitialiser" x plus tard pour dire x = z + y sans erreur (erreur de syntaxe au moins). Ai-je raison?
Re : Comment utiliser les Radio BoxSet et Get sont des opposés exacts.Si nous regardons
Match( self << Get Selected,
"95%", x << Set( 1.96 ); z = x << get;,
"90%", x << Set( 1.645 ); z = x << get;,
"98%", x << Set( 2.326 ); z = x << get;,
"99%", x << Set( 2.576 ); z = x << get;
)
La variable "X" pointe vers un objet d'affichage.Ainsi, pour communiquer avec un objet d'affichage, on passe des messages à l'objet.Ainsi pour affecter une valeur à l'objet on passe le message à l'objet pour "Définir" la valeur.Ainsi,
x << Set( 1.96 );
La variable "Z" est juste une variable de mémoire (une valeur de mise à l'échelle).Pour attribuer une valeur à une variable de mise à l'échelle, on utilise simplement un "=", comme
a = 42;
theParameterValue = b + c * 24;
mais dans votre cas, vous souhaitez définir la variable de mise à l'échelle "Z" sur la valeur de l'objet d'affichage, "X".Donc, pour ce faire, on utilise le "=" pour attribuer la valeur à la variable "Z", mais il faut passer le message "<< get" à l'objet d'affichage "X" pour récupérer sa valeur actuelle.
z = x << get;
Les déclarations auraient également pu être écrites :
x << Set( 1.96 ); z = 1.96;
ce qui aurait pu être plus compréhensible.
Re : Comment utiliser les Radio BoxCela se sent très peu intuitif. Donc Set et Get sont similaires mais différents. Merci encore pour la direction.
Re : Comment utiliser les Radio BoxLe problème que vous rencontrez est que vous êtes un peu confus quant à la variable "X".Dans le code qui @vince_faller à condition que "X" soit associé à un objet DisplayBox.Plus précisément, il s'agit d'un objet d'affichage NumberEditBox().Le NumberEditBox() est un objet dans votre fenêtre.Pour définir et obtenir les valeurs dans l'objet, vous utilisez <<
z = x << get;
Cependant, la plupart des scripts sont structurés pour afficher une fenêtre permettant d'obtenir et de définir des informations, puis fermez la fenêtre pour effectuer d'autres calculs.Par conséquent, on déplace généralement les valeurs requises hors des objets d'affichage vers des échelles, des listes ou des matrices JSL standard.Pour le NumberEditBox(), j'utilise généralement un simple message <
New Window( "Example",
Panel Box( "Confidence Interval",
rb = Radio Box(
{"90%", "95%", "98%", "99%"},
<<SET function=""></SET>
ou vous pouvez simplement définir la valeur z dans la Radito Box()
New Window( "Example",
Panel Box( "Confidence Interval",
rb = Radio Box(
{"90%", "95%", "98%", "99%"},
<<SET function=""></SET>
Re : Comment utiliser les Radio BoxHummm....
J'ai utilisé ce code :
Match( rb << Get Selected,
"95%", x << Set( 1.96 ),
"90%", x << Set( 1.645 ),
"98%", x << Set( 2.326 ),
"99%", x << Set( 2.576 )
);
pour afficher le score z pour un CI choisi via des boutons radio. Le x attribué et le score z correct affichés.
Je veux maintenant utiliser le score z dans une formule, mais j'obtiens cette erreur :
Send attend un objet inscriptible lors de l'accès ou de l'évaluation de 'Send' , z << /*###*/Set( 1.96 ) /*###*/
La valeur x obtenue dans le code ci-dessus n'est-elle pas une valeur numérique que je peux utiliser dans une formule ? Existe-t-il un moyen de le "forcer" à être/agir numérique?
Re : Comment utiliser les Radio BoxMerci pour l'avertissement, je vais certainement regarder ça de près.
Re : Comment utiliser les Radio BoxVous mentionnez que vous apprenez JSL en autodidacte.Compte tenu de cela, je vous suggère de prendre le temps de lire le Guide de script
Aide==>Livres==>Guide de script
et que vous devenez très familier avec l'index de script.Dans l'index, vous trouverez tous les messages, etc. qui peuvent être envoyés aux fonctions et aux objets, et vous donneront des exemples de chacun.Vous trouverez ci-dessous l'exemple référencé dans la section du guide pour Radio Button(), utilisant un Set Function() pour le traitement

Re : Comment utiliser les Radio BoxMerci beaucoup pour votre réponse. J'étudierai certainement plus sur le match et cette "fonction de réglage" que vous avez suggérée. Merci encore!
Re : Comment utiliser les Radio BoxVous délimitez les variables sous forme de colonnes lorsque vous faites : rb.Vous devez envoyer les objets graphiques << messages.
Names Default To Here( 1 );
computeResults = Expr(
match(rb << Get Selected,
"95%", x << Set(1.96),
"90%", x << Set(1.645),
"98%", x << Set(2.326),
"99%", x << Set(2.576)
);
);
New Window( "Example",
Panel Box( "Confidence Interval",
rb = Radio Box(
{"90%", "95%", "98%", "99%"},
Show( rb << Get() ),
),
),
H Center Box( Button Box( "Calculate Minimum Sample Size", computeResults ) ),
V List Box( Text Box( "" ), ciolb = Panel Box( "Result", x = Number Edit Box( "" ) ) )
);
//Or you could make the radiobox actually just change it
New Window( "Example",
Panel Box( "Confidence Interval",
rb = Radio Box(
{"90%", "95%", "98%", "99%"},
<<SET function=""></SET>Re : Comment utiliser les Radio Boxedit: Je suis désolé, le but est de reconnaître quelle case radio est marquée, puis d'imprimer le z-score.