MATLAB: GUI uitable logical values

gui uitable logical values

SO I HAVE this ui table i want to select sujects and push 'submit' to calculate the sum of credit for the subject i selected
i dont know how to dealing with uitable to get data from it and calculat the sum
and after that i want to push a clear' button to reset all
help please

Best Answer

"SO I HAVE this ui table i want to select sujects and push 'submit' to calculate the sum of credit for the subject i selected"
In the callback function for the "submit" button, add this section of cose. You'll need to adapt it to your gui. That means you'll need to change the variable names and the column numbers.
% I create a fake UI table just for the example
h.uitable = uitable('Data', [{false;true;true;false;false},num2cell((1:5)')], 'ColumnEdit', [true, true],'ColumnName', {'Select','Credit'});
% In my table, the check boxes are in column 1, then credits are in column 2.
% * you'll need to adapt this to your table (the variable names and column numbers)
% * These steps could be combined into 1 line but it's more intuitive this way
% Step 1) Determine which rows have checked boxes
rowChecked = [h.uitable.Data{:,1}]';
% Step 2) Get the credits for each row of checked boxes
credits = [h.uitable.Data{rowChecked,2}]';
% Step 3) add the credits
creditSum = sum(credits);
"and after that i want to push a clear' button to reset all"
In the callback function to you "clear" button, add this section of code. Again, you'll need to adapt it to your GUI.
% set all checkboxes to false
h.uitable.Data(:,1) = {false};
% Remove all credits
h.uitable.Data(:,2) = [];