GUI varargout does not update
2 ビュー (過去 30 日間)
古いコメントを表示
I've build a GUI that let users manually adjust a segmentation. However, varargout only 'captures' the first correction made. Any other corrections are not represented in my final output. My varargout function looks as follows:
function varargout = Clean_images_OutputFcn(hObject, ~, handles)
handles=guidata(hObject);
uiwait
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
varargout{1} = handles.MC_segmentation;
varargout{2}=handles.figure1;
uiresume
Furthermore, I have an callback and pushbutton to close the GUI.
% --- Executes on button press in Push_end.
function Push_end_Callback(hObject, eventdata, handles)
handles=guidata(hObject);
uiresume
varargout{1} = handles.MC_segmentation;
delete( handles.figure1)
How can I constantly keep updating my output?
5 件のコメント
採用された回答
Rik
2019 年 2 月 7 日
Instead of using the slow disk to save and store data, you could use setappdata instead. Since you wish to close the figure, you should use the graphics root as your target object. The class I described in a comment could use a similar structure as well if you prefer.
%in your GUI
setappdata(0,'MC_segmentation',handles.MC_segmentation)
%in your code afterwards
MC_segmentation=getappdata(0,'MC_segmentation');
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Migrate GUIDE Apps についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!