Need help in getting value in uitable and doing strcmp ==1

7 visualizzazioni (ultimi 30 giorni)
I am doing a uitable function in a GUI and one of the column consist of popupmenu. In the popupmenu, if the user selects A, the strcmp will reflect it as 1, otherwise it's 0.
This is my function code.
function uitable2_CellEditCallback(hObject, eventdata, handles)
uitable2 = get(handles.uitable2,'Data')
strcmp(uitable2(1,1),'A')
However, I am getting this error:
Not enough input arguments.
Error in work_file>uitable2_CellEditCallback (line 7067)
uitable2 = get(handles.uitable2,'Data')
Error while evaluating Table CellEditCallback
Anyone here able to advise? Thanking you in advance.

Risposta accettata

Walter Roberson
Walter Roberson il 17 Apr 2019
Modificato: Walter Roberson il 17 Apr 2019
I suspect you coded the table CellEditCallback function yourself, and that when you did, that you did not use interface code to insert the handles into the call to uitable2_CellEditCallback . MATLAB only passes two arguments automatically and not handles; when GUIDE is responsible for creating a callback, then it uses extra logic to insert the handles structure into the call.
You can probably insert the line
handles = guidata(hObject);
just before the reference to handles.uitable2. On the other hand, chances are that you can instead convert your get into
uitable2 = get(hObject, 'Data');
  1 Commento
Bertrand Low
Bertrand Low il 18 Apr 2019
Thank you! You are amazing! I changed to uitable2 = get(hObject, 'Data'); and it worked! :)

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Develop Apps Using App Designer 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