查看: 6196|回复: 6|关注: 0

[已解决] 如何一次性关闭不定数目的figure,但不关闭主界面??

[复制链接]

新手

5 麦片

财富积分


050


5

主题

22

帖子

0

最佳答案
最近在编写一个gui程序,总是会生成很多图,但一个一个删又很麻烦,就想能编写一个通用的程序可以关闭现有的所以figure,而不管其是怎么命名的。

GUI编程中,我通过调用函数生成各种图,以figure(1),figure(2)。。。。顺序命名,但个数不一定,而且生成之后有可能会误删其中一个图导致顺序不连续,我现在想设置一个按钮,点击它,即可把现在打开的figure都关掉。

问题:1)close all 会将主界面也关掉,不行。
2)如果我想通过一个循环来查找figure并通过close命令关掉,该怎么编写?
3)获取某一个figure的状态,例如figure(1)打开还是关闭了,应该用什么命令??

我自己有一个思路,就是我通过循环挨个检查每个figure的状态,如果某个figure是打开的,我就用close命令关掉它,但是具体的代码不会写........

请教各位大神

新手

5 麦片

财富积分


050


5

主题

22

帖子

0

最佳答案
 楼主| 发表于 2012-7-18 16:55:02 | 显示全部楼层
自己先顶一下,,,,,,,,,,,,,,,,,,,,,,,,,,,

MATLAB 基础讨论
版块优秀回答者

退役版主

2501 麦片

财富积分



11

主题

2769

帖子

276

最佳答案
  • 关注者: 204
发表于 2012-7-19 04:10:53 | 显示全部楼层 |此回复为最佳答案
最省事的解决方案之一,是把主界面的HandleVisibility属性设为off,这样在执行close all时就会忽略主界面。

论坛优秀回答者

1532

主题

1万

帖子

482

最佳答案
QQ
  • 关注者: 5139
发表于 2012-7-19 04:51:13 | 显示全部楼层
楼上的解决方法非常好。

or you can try:

figHandles = get(0,'Children')
math (博士、教授)Email: iLoveMATLAB@gmail.com     QQ: 1023785467
我在网络上的言论、见解等只代表我个人的观念,与任何研究机构、商业公司等无关。欢迎你通过任何方式与我探讨学术和技术上的问题(学生提问的话,请在论坛上发帖提问)。最新日志: 专程去北京拜访宋知用老师

新手

5 麦片

财富积分


050


5

主题

22

帖子

0

最佳答案
 楼主| 发表于 2012-7-19 14:21:01 | 显示全部楼层

多谢回复,以前都不知道这个属性,回来仔细看看

新手

5 麦片

财富积分


050


2

主题

6

帖子

0

最佳答案
发表于 2012-11-4 17:00:07 | 显示全部楼层
HandleVisibility属性在主界面哪?没看到啊。

新手

5 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
发表于 2019-1-11 17:36:03 | 显示全部楼层
在主界面类似笔写字那个图标inspector:figure-HandleVisibility-off,感谢大神,亲测有效!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表