Error for assignment of Dynamic string for Struct array in GUI
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Hi all,
I created a GUI programtically. I've a database (struct array) something like this
database.B01.Comp
database.K01.tur
database.C01.comp
.
.
.
etc.
I want to readin the data whenever the user selects particular type of data from a popupmenu. For instance, my callback function for the popup is.
function[] = pop11_2_Callback(varargin)
% get the string of the popmenu
S1 = (get(handles.pop1_2,'String'));
% Get the user selction of the string
S2 = (get(handles.pop1_2,'Value'));
% User selection
Sname = S1(S2);
%displaying the database corresponding to particular shaft.
database.(Sname).turbine
end
when I try to use this I get an error saying.
Argument to dynamic structure reference must evaluate to a valid field name.
Error in sample_gui/pop11_2_Callback (line 942)
database.(Sname).turbine(2,:)
Error while evaluating UIControl Callback
I tried to check it with the same code outside GUI and it works. But I'm not sure what is causing problem in my case.
Thanks in advance.
0 comentarios
Respuestas (1)
Walter Roberson
el 2 de Feb. de 2016
Your code does not define Sname. Also, because you use str2num(), your S1 is a numeric vector so what you have named String will be a numeric value not a string.
2 comentarios
Ver también
Categorías
Más información sobre Migrate GUIDE Apps en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!