Redimensionner la boîte de panneau dans JSLSalut la communauté JMP,
Je crée un complément qui génère un tableau de bord. Le tableau de bord a une boîte de panneau avec une liste d'options à choisir. La partie du code qui spécifie la boîte du panneau est illustrée ci-dessous (j'ai essayé de le rendre aussi simple que possible en commentant des lignes sans rapport avec le problème en cours). Lors de l'exécution du code, le panneau que j'obtiens ressemble à ceci:

C'est excessivement large et je veux avoir le contrôle sur sa taille, mais je ne pouvais pas comprendre comment. J'ai essayé "<< Set Size( width, height )" et "<< Frame Size( width, height )" et ils n'ont pas fonctionné, même si je ne sais pas si je les ai utilisés correctement, ou s'ils sont les bons messages pour commencer. Pourriez-vous s'il vous plaît me conseiller?
Merci d'avance!
Ahmed
win = Platform(
dt,
H List Box(
Panel Box( "Select option:",
plist = List Box(
points,
max selected( 1 ),
chosen = plist << get selected;
if( chosen[1] != "",
// Some simple code that runs if no option is selected.
);
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
)
)
)
);
Personnalisation de masseRe : Redimensionner la boîte du panneau dans JSLJe viens de réaliser que la réduction de la boîte extérieure avec la boîte intérieure est limitée par le titre ("Select option:") : plus le titre est petit, plus il peut rétrécir avec la boîte intérieure. Inutile de dire alors que la suppression du titre résout le problème.
Merci pour votre aide et pour les liens utiles, @jthi !
Re : Redimensionner la boîte du panneau dans JSLLes boîtes d'espacement peuvent faire de très belles choses. Consultez le lien ci-dessous (en particulier les pièces 10 et 11 avec les boîtes d'espacement):
13 conseils de script JMP utiles (et chanceux)
Modifier:
Découvrez également cette excellente présentation du Discovery Summit de 2019 Une approche structurée de la programmation avec JSL pour créer des applications réelles et évolutives .Le sujet lié à cela commence à 22h00, mais je suggère de consulter l'intégralité de la présentation.
Re : Redimensionner la boîte du panneau dans JSLMerci @jthi !
Juste pour le bénéfice de tout le monde, le "plist << set width( x );" n'a fonctionné pour moi que lorsque je l'ai ajouté à la section "Initialize()" du code d'application.
Cependant, en complément de ma question initiale, si vous regardez à nouveau l'image de la case "Sélectionner l'option :" ci-dessus, vous remarquerez qu'elle est composée d'une case extérieure et d'une case intérieure. La solution que vous avez suggérée contrôle bien l'intérieur, mais seulement. Alors que l'extérieur s'étirerait avec l'intérieur, il ne rétrécirait pas avec lui au-delà d'un certain point. J'ai essayé d'étiqueter "Panel Box();" et "H Zone de liste();" pour ensuite leur appliquer "<< set width():" et "gagner" de la même manière, mais en vain. Toute suggestion serait appréciée.
Merci encore!
AhmedRe : Redimensionner la boîte du panneau dans JSLRedimensionner le contenu à l'intérieur de la boîte du panneau
plist << Set Width(50)
Exemple complet :
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Reliability/TurbineEngineDesign1.jmp");
win = new window("", Platform(
dt,
H List Box(
Panel Box( "Select option:",
plist = List Box(
{"single", "double", "triple"},
max selected( 1 ),
chosen = plist << get selected;
if( chosen[1] != "",
// Some simple code that runs if no option is selected.
);
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
)
)
)
));
wait(2);
plist << set width(50);