Я ищу простой способ сохранить текущее состояние моего графического интерфейса и снова загрузить это сохраненное состояние. Я знаю, что есть видео для этого (http://blogs.mathworks.com/videos/2010/12/10/how-to-save-and-restore-state-of-a-gui-in-matlab/), но почему-то это не работает на моем компьютере.Matlab - простой способ сохранить всю фигуру/графический интерфейс
Я думал, что-то вроде этого: (я использовал GCF, потому что я не знаю «mainhandle» для всего моего GUI)
%Save Data
currentdata = getappdata(gcf);
uisave('currentdata',date);
%Load Data
[filename,pathname]=uigetfile({'*.mat'},'Select input file');
load([pathname,filename]);
Проблема с этим способом является, что открывает сохраненные данные в новой фигуре, а не в текущей, из которой я решил ее открыть.
Мне также было интересно, можно ли установить папку (которая добавлена в путь matlab) в качестве папки для сохранения/загрузки.
Благодарим за помощь! Klaus
Спасибо за ваш ответ! Нет ли более простого способа настроить uisave или что-то еще, чем uiremember/uirestore? – klaus
Уирмамбер/восстановление также, кажется, всегда восстанавливает последнее состояние, но я хочу, чтобы иметь возможность сохранять разные состояния (некоторые интересные случаи) и иметь возможность загружать каждый из них после другого – klaus
вы прочитали код этих функций? Вы можете изменить часть, которая сохраняет состояния в 'mem_file', и обернуть код в кнопках CallbackFcn в вашем графическом интерфейсе, чтобы вы могли решить, какие состояния вы хотите сохранить/загрузить. Они предоставили инструменты, поэтому вам не нужно переписывать их, но как использовать инструменты - это ваша работа. – scmg