我有以下代码,工作正常,但当我尝试关闭ROI管理器和蒙太奇时,我得到错误:
没有图片打开
我开始时没有指定窗口,然后尝试指定窗口,尝试run("Close");
和close();
。
ROI管理器和蒙太奇都与当前宏关闭,但消息后弹出。我在这里做错了什么?
macro "draw rois [v]"{
var list="/Volumes/bkonk7/old_OCT/ROI_list.txt";
pathroot="/Volumes/bkonk7/old_OCT/";
var pathlist=File.openAsString(list);
var pathsplit=split(pathlist, "\n");
for(i=0;i<pathsplit.length;i++){
var roilist=split(pathsplit[i], ".");
run("Image Sequence...", "open="+pathroot+roilist[i]+" sort");
run("Rotate 90 Degrees Right");
run("RGB Color");
roiManager("Open", pathroot+pathsplit[i]);
roicount=roiManager("count");
for(j=0;j<roicount;j++){
roiManager("Select", j);
run("Draw", "slice");
}
saveAs("Tiff", pathroot+roilist[i]+"_edit.tif");
run("Image Sequence...", "open="+pathroot+roilist[i]+" sort");
run("Rotate 90 Degrees Right");
run("RGB Color");
splitname=split(roilist[i],"/");
run("Combine...", "stack1="+splitname[2]+"_edit.tif stack2="+splitname[2]);
saveAs("Tiff", pathroot+roilist[i]+"_edit.tif");
selectWindow("ROI Manager");
run("Close");
selectWindow(splitname[2]+"_edit.tif");
close();
}
}
答案 0 :(得分:0)
您可以使用:
list = getList("image.titles");
if (list.length != 0) {
close();
}