How to validate user input in a UITable between three values?

3 views (last 30 days)
I just one the user gives numbers either 0.5, 0.7 or 1
function damage
% Create table array
t = readtable('Country.xls');
vars = {'Damage','G','k1','k2','k3','k4'};
t = t(1:32,vars);
% Create UI figure
fig = uifigure;
% Create table UI component
uit = uitable(fig);
uit.Data = t;
% uit.ColumnSortable = true;
uit.ColumnEditable = [false false true true true true];
uit.CellEditCallback = @k1CheckCB;
end
I did another function like this, but I'm not sure how it is supossed to work with a triple conditional
function k1CheckCB(t)
if (t.k1 == 0.5 || t.k1 == 0.7 || t.k1 == 1.0)
tableData = uit.Data;
tableData{t.k1} = t.PreviousData;
uit.Data = tableData;
warning('Extent values are only 0.5, 0.7 and 1.0')
end
end

Accepted Answer

Yongjian Feng
Yongjian Feng on 3 Aug 2021
Why not a drop down selection of three values?
  7 Comments
DulceEien
DulceEien on 3 Aug 2021
Edited: DulceEien on 3 Aug 2021
I understand, it is because I wanted to limit only to those values for that k1 column (values either 0.5, 0.7 or 1), but I saw that ~ismember for a row values, before as you mentioned I wanted to assign a drop down bottom but I got also a mistake
something like this:
extent = categorical(t.k1,{'0.5','0.7','1.0'});
t.k1 = extent;

Sign in to comment.

More Answers (0)

Categories

Find more on Migrate GUIDE Apps in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!