Storing values from editable gui table in a variable

11 次查看(过去 30 天)
I'm trying to make an editable ui table that outputs a matrix of zero's and one's depending on which checkboxes in the table are checked. This matrix with the edited values should be stored in A, but I cannot figure out why this doesn't happen. This is my code:
function [A] = Gui()
fig = uifigure;
tdata = table('Size',[8 9],'VariableTypes',{'double','logical','logical','logical','logical','logical','logical','logical','logical'});
uit = uitable('Parent',fig,'Data',tdata,'ColumnEditable',true,'ColumnWidth',{2 2 2 2 2 2 2 2 2});
btn = uibutton(fig,'ButtonPushedFcn', @(btn,event) StoreTable(uit));
btn.Position = [80 80 100 22];
btn.Text = 'Store';
and:
function [A] = StoreTable(uit)
A = get(uit, 'Data');
disp(A);
Thanks in advance,
Bas

采纳的回答

Subhadeep Koley
Subhadeep Koley 2019-11-1
编辑:Subhadeep Koley 2019-11-1
I assume that you want to store the table in a variable in the workspace. You can achieve the same with the assignin() function. Refer the following code.
function GUI()
fig = uifigure;
tdata = table('Size',[8 9],'VariableTypes',{'double','logical','logical','logical','logical','logical','logical','logical','logical'});
uit = uitable('Parent',fig,'Data',tdata,'ColumnEditable',true,'ColumnWidth',{2 2 2 2 2 2 2 2 2});
uibutton(fig,'Position',[80 80 100 22],'Text','Store','ButtonPushedFcn', @(btn,event)StoreTable(uit));
end
function StoreTable(uit)
A = get(uit, 'Data');
disp(A);
A = table2array(A); % Comment out this line if you want data in Table format itself
assignin('base','A',A); % Assigning the table into the MATLAB base worksapce
end
  1 个评论
Bas van der Veen
Bas van der Veen 2019-11-1
Yes thank you, that was what I was looking for. I searched a lot on the web and on this forum but I never came across this assignin() command.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Develop uifigure-Based Apps 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by