JSLで画像を閉じる問題objこんにちは、JSLスクリプトで助けを得たいと思っています。 newImageオブジェクトが開いたままになるという問題がありますが、完全に非表示になっています。 私はそれが開いていると知っている唯一の方法はそれがそれがJMPを閉じることによって修正される別のプログラムで開いていると言っているのでwindowsがファイルを削除できないからです。 ここに私のコードの断片があります、私はいくつかのobj << close()とobj << close window()を試みましたが、オブジェクトは残ります。
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>助言がありますか?
再:問題のJSLで画像objを閉じるJMPで新しいセッションを開始する場合は、次のスクリプトを試してください。
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();
次にLOGウィンドウを見てください。3つの結果が表示されます。 シンボル/オブジェクトは、ローカル、ここ、およびグローバルにすることができます。注意私はあなたがおそらく持っていないだろうというグローバルを1つ持っています。 そのため、重要なのは、変数を新しい値に置き換えて名前(シンボル)を削除することです。 もっと詳しく知りたいと思うかもしれませんネームスペース 『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