Attempt to reference field of non-structure array

1 visualizzazione (ultimi 30 giorni)
I am using GUIDE to create a nifty tool. Originally I would open the ".fig" file in GUIDE, as you right-click it. Then run the program from there. Today I decided to 'OPEN' it directly when I right-click the ".fig" file. Here is the error:
??? Attempt to reference field of non-structure array.
Error in ==> Cable_Sizing_Rev3>choose_resistance_data_source_popup_Callback at 1569
relevant_handles = [ handles.resistivity_edit, handles.resistivity_text, handles.unit_resistivity_text, ...
Error in ==> gui_mainfcn at 96
feval(varargin{:});
Error in ==> Cable_Sizing_Rev3 at 53
gui_mainfcn(gui_State, varargin{:});
Error in ==>
@(hObject,eventdata)Cable_Sizing_Rev3('choose_resistance_data_source_popup_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
I have checked other soluctions and it didn't quite help solve the problem.

Risposta accettata

Image Analyst
Image Analyst il 9 Gen 2014
Modificato: Image Analyst il 9 Gen 2014
You are referencing three fields of handles: resistivity_edit, resistivity_text, and unit_resistivity_text. handles does not have at least one of those fields . Put handles with no semicolon right before you call the line:
handles
relevant_handles = [ handles.resistivity_edit, ............
That will cause all the fields of handles to be sent to the command window so you can determine which one field is missing.
EDIT: On second thought, you can't run the fig file from the current folder panel like you tried. You have to either type F5 or click the green triangle if you're in the editor, or click the green triangle in GUIDE. That's why handles is undefined.
  1 Commento
tuyen
tuyen il 14 Gen 2014
Thanks for your time to answer this. I will compile this into .exe file very soon.

Accedi per commentare.

Più risposte (1)

Matt J
Matt J il 8 Gen 2014
Doesn't sound like a problem. The initial way you were running the GUI is the right one. You can also run the mfile that GUIDE produces to launch the GUI.
  6 Commenti
tuyen
tuyen il 14 Gen 2014
That is correct, it does not show the error immediately, only when I make this one particular selection. Does make sense to have it run (green play button) from the Mfile or GUI figure first. Thanks J.
tuyen
tuyen il 14 Gen 2014
Wow, I can't accept TWO answers?! I am sorry Matt J., you definitely deserve a reputation as well.

Accedi per commentare.

Categorie

Scopri di più su Migrate GUIDE Apps in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by