JSL Récupérer la boîte de cadre sélectionnée<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut,
J'essaie de créer un script JMP qui ajoutera un script graphique à une plate-forme préexistante, en fonction d'une sélection d'utilisateurs.Comment puis-je récupérer la référence à une boîte de cadre sélectionnée par l'utilisateur ?Y a-t-il une meilleure manière de faire cela?J'utilise JMP10.
Merci!
Noms par défaut ici ( 1 ) ;
// Exemple.
grandeClasse = Ouvrir ( "$SAMPLE_DATA/Grande classe.jmp" ) ;
bivouac = grandeClasse << Bivarié ( Oui ( : lester ) , X ( : hauteur ) ) ;
// L'utilisateur sélectionnera une ou plusieurs boîtes de cadre.
biv = bivouac << Rapport ;
sel = biv [ FrameBox ( 1 )] ;
sel << Sélectionner ;
// Besoin d'aide:
// JMP récupérera la référence à la zone de cadre sélectionnée et ajoutera un script graphique.
// JMP ajoutera quelque chose à la zone de cadre sélectionnée...
sel << Ajouter un script graphique ( Texte ( Centre justifié , { 55 , 160 } , "Salut!") ; ) ;
sel << Désélectionner ; // JMP renverra le graphique à l'utilisateur.
Re : JSL récupère la boîte de cadre sélectionnéeMerci Ian.
Re : JSL récupère la boîte de cadre sélectionnéeVous n'avez pas besoin de 'rwin' puisque 'win' est déjà un rapport. Donc les dernières lignes devraient être :
// Sélectionnez gagner.
gagner << Afficher l'arborescence ; // Cela marche.
selwin = gagner [ FrameBox ( 1 )] ;
selwin << Sélectionner ;
Attendez ( 2 ) ;
selwin << Désélectionner ;
Re : JSL récupère la boîte de cadre sélectionnéeJe peux sélectionner la fenêtre actuelle et afficher une arborescence, mais je ne parviens pas à accéder aux zones de cadre qu'elle contient.Un exemple est ci-dessous.Des idées?
// Exemple.
Noms par défaut ici ( 1 ) ;
// Exécute ce bloc JSL entier d'un coup, à partir d'ici...
grandeClasse = Ouvrir ( "$SAMPLE_DATA/Grande classe.jmp" ) ;
bivouac = grandeClasse << Bivarié ( Oui ( : lester ) , X ( : hauteur ) ) ;
Attendez ( 2 ) ;
gagner = Fenêtre actuelle () ;
// ...jusqu'ici.
// Ajoute du texte à biv.
bivouac << Afficher l'arborescence ;
biv = bivouac << Rapport ;
sel = biv [ FrameBox ( 1 )] ;
sel << Sélectionner ; // L'utilisateur sélectionnera une ou plusieurs boîtes de cadre.
sel << Ajouter un script graphique ( "Dos" , Texte ( Centre justifié , { 55 , 160 } , "Salut!") ) ; // Ajouter un script.
sel << Désélectionner ;
// Essayez de sélectionner win.
gagner << Afficher l'arborescence ; // Cela marche.
gagner = gagner << Rapport ;
selwin = gagner [ FrameBox ( 1 )] ;
selwin << Sélectionner ; // Cela ne fonctionne pas.Pourquoi pas?
selwin << Désélectionner ;
Re : JSL récupère la boîte de cadre sélectionnéeSalut PMroz,
Excusez-moi de ne pas avoir été clair.
J'essaie de créer un complément JMP qui permettra à l'utilisateur d'ajouter un script graphique prédéfini à un graphique qu'il a déjà créé.Le script graphique peut être nécessaire pour de nombreux types de graphiques différents, il n'est donc pas pratique de créer un script complet pour le graphique et d'inclure la partie graphique ; le nombre d'options nécessaires est trop grand.De plus, l'utilisateur final peut ne pas avoir la familiarité avec JMP nécessaire pour manipuler l'arborescence.
J'espère que l'utilisateur sélectionnera une zone de cadre à l'aide de l'outil de sélection, puis exécutera le complément pour ajouter le script graphique.La pièce manquante à mon puzzle est d'amener JMP à détecter la boîte de cadre que l'utilisateur a sélectionnée.Une fois que j'ai la référence de la boîte de cadre, je peux ensuite ajouter les graphiques.
Est-il possible pour JMP de détecter quel cadre (ou graphique) a été sélectionné ?
En dernier recours, je peux demander à l'utilisateur final d'ajouter manuellement le script graphique à l'aide des propriétés Personnaliser le graphique, mais j'espère une solution plus élégante.
Re : JSL récupère la boîte de cadre sélectionnéeOui.Vous pouvez ajouter cette déclaration au code ci-dessus :
nouveau << afficher l'arborescence ;
Ce qui produira la sortie de la structure arborescente.Vous pouvez parcourir ceci pour la boîte de cadre nécessaire.

Re : JSL récupère la boîte de cadre sélectionnéeSalut PMroz,
Merci l'entrée.Si possible, je voudrais modifier le script graphique après la création du graphique.Est-il possible de récupérer la référence d'un cadre sélectionné ?
Re : JSL récupère la boîte de cadre sélectionnéeAu lieu d'emprunter la route du rapport et de creuser dans l'arborescence, vous pouvez également simplement créer une fenêtre et y ajouter ce que vous voulez.Par exemple:
Noms par défaut ici ( 1 ) ;
// Exemple.
grandeClasse = Ouvrir ( "$SAMPLE_DATA/Grande classe.jmp" ) ;
nouveau = nouvelle fenetre ( "Exemple" ,
bivouac = grandeClasse << Bivarié ( Oui ( : lester ) , X ( : hauteur ) ) ,
tuberculose = Zone de texte ( "Salut!" )
) ;
tuberculose << définir la largeur ( 500 ) ;
tuberculose << Justifier le texte ( centre ) ;