Salut tout le monde,
(Je ne suis pas sûr à 100 % que ce soit le bon forum pour cela - n'hésitez pas à déplacer le message/à m'orienter dans la bonne direction si nécessaire)
Nous fournissons un complément JMP à plusieurs dizaines d'utilisateurs. Ce complément affiche quelques boîtes de dialogue et fonctionne sans aucun problème.
depuis plusieurs années maintenant (nous avons commencé à développer avec JMP 14, et les mises à jour vers 15 / 16 n'ont posé aucun problème).
Cependant, avec JMP 17, deux de nos utilisateurs rencontrent un problème étrange. Le complément fonctionne en soi, mais dans les boîtes de dialogue contenant
les zones de liste, ils ne peuvent sélectionner aucun élément - il semble que la zone de liste ne réponde à aucun événement (ni les clics de souris
ni navigation au clavier).
Voici une version allégée qui présente le problème (elle affiche deux boîtes de dialogue - une avec une seule zone de liste, une avec deux et quelques boutons. Aucune d'elles ne fonctionne).
showSelectDialog = function({process_col}, {Default Local},
parameter_list = List ("Param1", "Param2", "Param3");
nw = New Window("Select Parameters",
<<MODAL>>", select_script),
Button Box("<< Remove", remove_script)
)
),
V List Box(
text Box("Selected parameters:", << set font style( "Bold" ) ),
select_list = List Box (selected_param_list, width(250), nlines(20));
)
),
hlistbox(
ok_button = button box("OK",
selected_param_list = select_list << Get Items;
),
cancel_button = button box("Cancel")
),
// Script to add parameters from paramlist to the select_list, [DOE-379] remove from paramlist
select_script = Expr(
toappend = paramlist << Get Selected;
for(i=1, i<= Nitems(toappend), i++,
if(!Contains(select_list << Get Items, toappend[i]),
select_list << Append(toappend[i]);
)
);
paramlist << remove selected;
);
// Script to remove parameters from the select_list, [DOE-379] add to paramlist
remove_script = Expr(
toremove = select_list << Get Selected;
for(i=1, i<= Nitems(toremove), i++,
if(!Contains(paramlist << Get Items, toremove[i]),
paramlist << Append(toremove[i]);
)
);
//[DOE-379] sort alphabetically
select_list << remove selected;
param_list = paramlist << Get Items;
param_list = Sort List (param_list);
paramlist << Set Items(param_list);
);
);
if(nw["Button"] != 1,
dialog_ok = 0,
dialog_ok = 1
);
return(Eval List({selected_param_list, dialog_ok}));
);
showSimpleDialog = function({process_col}, {Default Local},
parameter_list = List ("Param1", "Param2", "Param3");
nw = New Window("Select Parameters",
<<MODAL></MODAL></MODAL>
Voici une vidéo montrant les boîtes de dialogue dysfonctionnelles :
JMP Version: 17.0.0 (622753)
OS version: Windows 11
Any pointers / suggestions highly appreciated.
Kind regards
Frank
Vous pouvez contacter le support JMP. Ils demanderont très probablement les fichiers Install Checker et des informations supplémentaires. De plus, si vous obtenez une solution, merci de la poster ici.
La désactivation des graphiques accélérés par le matériel (comme suggéré par le support JMP) a résolu le problème (au moins pour l'un de nos utilisateurs, le second est actuellement en vacances).
Voici les instructions que j'ai reçues du support JMP :
Veuillez autoriser l'utilisateur à exécuter le vérificateur d'installation JMP, puis nous envoyer le résultat par e-mail. Ce rapport nous fournira plus d'informations sur l'installation JMP spécifique.
- Dans JMP, accédez à Aide ? À propos de JMP et cliquez sur Installer Checker.
- Une fois le rapport affiché, choisissez Ouvrir dans le navigateur.
- Choisissez Fichier ? Enregistrer sous.
- Enregistrez-le sur votre bureau sous forme de fichier HTML.
Veuillez également laisser l'utilisateur accéder à Fichier > Préférences > Spécifique à Windows > Activer les graphiques accélérés par le matériel.Désélectionner/affichere ces préférences, puis cliquez sur Appliquer et redémarrez JMP et testez à nouveau.
Mise à jour La solution de contournement suggérée fonctionne également pour le deuxième utilisateur concerné.