How to make sure GUI is deleted before generating it again?

조회 수: 1 (최근 30일)
hana
hana 2012년 7월 9일
I have a GUIDE made gui and I'd like to make sure that the figure of the gui is deleted along with all associated data (destroyed) before generating it again? (without having to manually close the gui before calling it again) Basically I want to return the gui to it's original state (all buttons return to off position.. etc.) possibly by taking action in the 'opening function'
thanks and any help is appreciated

채택된 답변

Jan
Jan 2012년 7월 9일
편집: Jan 2012년 7월 9일
As far as I remember there is an "Open once only" flag in GUIDE, which include code to prevent opening multiple instances of one GUI. Please search in the menus again.
[EDITED] I've a link: http://www.mathworks.com/help/techdoc/creating_guis/f9-998364.html, and especially http://www.mathworks.com/help/techdoc/creating_guis/f9-998364.html#f9-998854. Unfortunately this feature must be selected initially. But you can create a new figure with this option and copy the created code to your existing project.
Actually you only need a unique tag for the figure and close existing figures in the OpeningFcn:
figTag = 'MyUniqueFigureTag';
oldFig = findobj(allchild(0), '-flat', 'Tag', figTag);
delete(oldFig);

추가 답변 (3개)

Luffy
Luffy 2012년 7월 9일
편집: Walter Roberson 2012년 7월 9일
Use delete(name of ur gui) command.
A way to do it might be to put a new push button & write above command in that push button's call-back

hana
hana 2012년 7월 9일
I want this to happen automatically when the gui is generated.. maybe by adding some command in "varargout" or "opening" -function..., not through a push button?!

Walter Roberson
Walter Roberson 2012년 7월 9일

카테고리

Help CenterFile Exchange에서 Migrate GUIDE Apps에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by