Clear Filters
Clear Filters

How to load a structure as a handle?

16 views (last 30 days)
Ibro Tutic
Ibro Tutic on 1 Jun 2017
Answered: E Wilder on 9 Dec 2018
I am trying to load a structure to a handle that I can use in a GUI. When I load the structure, I use'structure.mat')
However, when I want to pull data from it, I have to use a nested structure of sorts. So if the original structure was DLG, when using the data within the GUI, I have to use Is there anyway to just use the DLG structure instead of all of the handles stuff? Below is a function that might be relevant to the question.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA) = load(fullfile(handles.folder, handles.item));
tmp_nam = fieldnames(;
tmp_val = cellfun(@(x)(,tmp_nam,'UniformOutput',false);
handles.table = [tmp_nam tmp_val];
guidata(gcbo, handles);
  1 Comment
Jan on 1 Jun 2017
Edited: Jan on 1 Jun 2017
No, this does not "load data to a handle". The struct is called "handles", but it could have any other name also. A "handle" is something very specific. You load the contents of the file to a field of the struct "handles".
I do not know what "a nested structure of sorts" is. "all of the handles stuff" is not clear also.

Sign in to comment.

Accepted Answer

Jan on 1 Jun 2017
Edited: Jan on 1 Jun 2017
FileData = load('structure.mat');
handles.Dlg = FileData.Dlg;
I'm not sure, but perhaps tmp_val can be obtained easier:
tmp_val = struct2cell(FileData.Dlg);

More Answers (1)

E Wilder
E Wilder on 9 Dec 2018
Daniel Shrub provides a good answer to this here:


Find more on Language Fundamentals in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!