i need assistant making uitable

1 vue (au cours des 30 derniers jours)
slumberk
slumberk le 7 Fév 2011
Guyz.. I need assistant about making GUI in matlab.. I wan to make 2 tables n 1 pushbutton. My prob is i cannot callback the data from the table to the pushbuttons.. These are my callback data for uitable1 n uitable2:
*table = get(hObject,'Data');
handles = guidata(hObject);
handles.table = table;
guidata(hObject, handles);**BOLD TEXT*
And then i put these coding into pushbuttons:
*handles = guidata(hObject);
table = handles.table;
table = cell2mat(table);
cost1 = get(handles.uitable1,'Data');
mwlimits1 = get(handles.uitable2,'Data');
Pdt1 = get(handles.input3_editText,'String');
guidata(hObject, handles);
cost = cell2mat(cost1);
mwlimits = cell2mat(mwlimits1);
Pdt = str2num(Pdt1);**BOLD TEXT*
Can anyone help me pls~~

Réponse acceptée

slumberk
slumberk le 8 Fév 2011
thx walter. I guess i have to show you the code. Do give some comments.
These are my button callback:
function add_pushbutton_Callback(hObject, eventdata, handles)
cost1 = cell2mat(get(handles.uitable1,'Data'));
mwlimits1 = cell2mat(get(handles.uitable2,'Data'));
Pdt = str2num(get(handles.input3_editText,'String'));
lambda1 = mat2cell(lambda);
set(handles.answer1_staticText,'Data', lambda1);
Pgg1 = mat2cell(Pgg);
set(handles.answer2_staticText,'Data', Pgg1);
totalcost1 = num2str(totalcost);
set(handles.answer3_staticText,'Data', totalcost1);
guidata(hObject, handles);
This are my uitable callback that you suggest:
handles.uitable1 = hObject;
guidata(hObject,handles);
These are my edit text callback:
function input1_editText_Callback(hObject, eventdata, handles)
input = str2num(get(hObject,'String'));
if (isempty(input))
set(hObject,'String','0')
end
guidata(hObject, handles);
function input1_editText_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
So basically, i have a figure with 3 input from user which includes 2 uitables and 1 edit text. And i have to push buttons and i have to generate the answer into 3 which is lambda,pgg1 and totalcost. So what do you think.. Thank you again =)
  4 commentaires
Walter Roberson
Walter Roberson le 8 Fév 2011
Sorry no idea on changing the table size in Guide or through the property inspector.
slumberk
slumberk le 8 Fév 2011
owh.. ok.. thx again

Connectez-vous pour commenter.

Plus de réponses (2)

Walter Roberson
Walter Roberson le 8 Fév 2011
Your callback for uitable1 should be
handles.uitable1 = hObject;
guidata(hObject,handles);
Likewise for uitable2 except setting handles.uitable2
Then your callback for the pushbutton would be like,
cost1 = cell2mat(get(handles.uitable1,'Data'));
mwlimits1 = cell2mat(get(handles.uitable2,'Data'));
Pdt = str2num(get(handles.input3_editText,'String'));
but you haven't shown any code for actually doing anything with these matrices and number once you have them, so I cannot advise past this point.
The rest of the code you show for your callbacks appears to be unnecessary if you are working in Guide -- though starting with
handles = guidata(hObject);
would be needed if you were doing your own callback programming instead of having the callbacks generated by GUIDE.

Walter Roberson
Walter Roberson le 8 Fév 2011
This appears to be a continuation of your previous question, #924 and should probably have been posted as part of that.

Catégories

En savoir plus sur Migrate GUIDE Apps dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by