Problème de fermeture de l'image obj en JSLBonjour, J'espère avoir de l'aide avec un script JSL.J'ai des problèmes avec un objet newImage qui reste ouvert mais qui est complètement masqué.La seule façon pour moi de savoir qu'il est ouvert est que Windows ne parvient pas à supprimer le fichier car il indique qu'il est ouvert dans un autre programme, ce qui est corrigé en fermant JMP.Voici un extrait de mon code, j'ai essayé quelques obj << close() et obj << close window() mais l'objet reste.
img_t = newImage(path_to_results||"/"||subfolder_list[k]||"/"||image)
w2 = new window("Image", Show Toolbars(0), Show Menu(0), img_t);
w2 << Add Simple ShapeAnnotation(Oval(PX-25,PY-25,PX+25,PY+25 ),color("Yellow"),raised(1));
img= w2 << getpicture();
img_t << Close Window;
w2 << Close Window;
img<<SET size=""></SET>Aucune suggestion?
Re : Problème de fermeture de l'image obj en JSLSi vous démarrez avec une nouvelle session dans JMP, essayez ce script :
Names Default to here(1);
img_t = New Image( "$SAMPLE_IMAGES/tile.jpg" );
w2 = new window("Image", Show Toolbars(0), Show Menu(0), img_t);
{PX,PY} = w2 << get size;
w2 << Add Simple ShapeAnnotation(Oval(PX-25,PY-25,25,25 ),color("Yellow"),raised(1));
img= w2 << get picture();
w2 << Close Window;
//the image objects still exist
//show(img);
//show(img_t);
img = empty();
img_t = empty();
show(img, img_t); //see LOG: img = Empty(); img_t = Empty();
delete symbols({img, img_t});
show symbols();
Regardez ensuite la fenêtre LOG. Vous verrez ceci : trois résultats d'affichage.Les symboles/objets peuvent être locaux, ici et globaux. Notez que j'en ai un global que vous n'aurez probablement pas.La clé est donc de remplacer une variable par une nouvelle valeur et de supprimer le nom (symbole).Vous voudrez peut-être en savoir plus sur Espaces de noms dans le Guide de script JMP.
img = Empty();
img_t = Empty();
// Here
img = Empty();
img_t = Empty();
PX = 451;
PY = 451;
w2 = DisplayBox[];
// 5 Here
// Global
com.jmp.wmurph.crashrpt.flag = 0;
// 1 Global