Can't set the current figure inside a function

1 次查看(过去 30 天)
Hi. I have encountered the following problem: I use a GUI and in the Callback function create new figure, which, obviously, appears at the top of the previous one. However, I need to make the old figure to appear on top, but setting
set(0,'CurrentFigure',old_figure)
at the end of callback function does not work for some reason, i.e. new figure still appears on top (which is little inconvenient for my case). Any suggestions?

采纳的回答

Walter Roberson
Walter Roberson 2012-11-4
figure(old_figure)
should raise it and make it current. Setting the current figure is, as best I recall, defined to not raise it.

更多回答(1 个)

Matt Fig
Matt Fig 2012-11-4
Try changing the order of the children of root.
figure
figure
pause(1)
% Now fig 2 is on top.
set(0,'children',flipud(get(0,'children')))
% Now fig 1 is on top.

类别

Help CenterFile Exchange 中查找有关 Graphics Object Programming 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by