I can not modify data in a table
5 次查看(过去 30 天)
显示 更早的评论
Good afternoon. My problem is as follows. I have 2 guide, one depends on another. What happens is that the guide number 1 has certain data that I need to transfer for the creation of the guide 2, in which there will be a table (of 2 columns) that should be created automatically with the data of the guide one and that will have "n" number of rows I already managed to get the table in guide 2 to be created as I need it, however I can not get the data that I enter (by keyboard) to keep on the table. I leave the cogigos if someone can tell me what is happening:
Thank you very much and I am attentive to your answers.
for the guide 1:
handles.data_form2_will_need = KC;
guidata(hObject,handles);
form2_h = form2();
%-------------------
for the guide 2:
function CalcularDin_Callback(hObject, eventdata, handles)
% hObject handle to CalcularDin (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
syms w
global NP
for k=1:NP
Mat_masa = get(handles.TablaMasa,'Data');
end
function form2_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to form2 (see VARARGIN)
% Choose default command line output for form2
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
%-------------------------------------------------------
global NP
handles.form1_h = findobj(groot, 'tag', 'form1');
handles1 = guidata(handles.form1_h); %this is form1's handles
handles.data_form2_needs = handles1.data_form2_will_need;
guidata(hObject, handles)
TTT=handles.data_form2_needs;
guidata(hObject, handles)
NumPiso= length ( TTT ( : , 1 ) ) - 1 ;
num_elem=cell(NumPiso,2);
num_elem(:,:)={''};
set(handles.TablaMasa,'Data',num_elem);
NP=NumPiso;
for k=1:2 %-length(NP) %-
NND(k,1) = NumPiso;
NumPiso=NumPiso-1;
set(handles.TablaMasa,'Data', NND);
end%-
5 个评论
Alexandra McClernon Ownbey
2019-10-10
I would suggest using uitable and storing it in a handle. You can save or export the handle from one gui to the next. Then it's just a matter of transferring the data. I found using uitable very useful when updating a plot in real time.
回答(1 个)
CAM
2019-10-10
Have you considered using appdata instead of guidata?
In this matlab answer (Appdata answer with link), there is a link to a great video by Doug Hull (former Mathworks employee) that addresses your situation directly and shows how to use appdata.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!