Create a Warning in GUI if statement

Hi,
I'm trying to create a warning in a GUI I wrote, if all values in a column of a cell array are greater than a number display a warning.
I've tried this but it isn't working
if c{:,2}>10
warndlg('string')
end
Any help is appreciated.

1 个评论

What does "not working" mean, precisely? The construct appears it should be fine. Is the array _c_ in context to the callback, perhaps?

请先登录,再进行评论。

回答(2 个)

if all(cellfun(@(C) ~isempty(C) && isnumeric(C) && all(C(:) > 10), c(:,2) ))
warndlg('string')
end
I have made the assumption here that items that are not numeric should not be counted as being > 10, and the additional assumption that empty cells are not to be counted as being > 10. However, in either of those cases, since the cell would not be counted as having a value greater than 10, it would not be true that all the values in the cell array column were greater than 10 so no warning would be produced.
I did not assume that the entries in the cell array were all the same size or the same number of dimensions.
Tip: to have it wait for you to click OK, wrap the warndlg() in a uiwait():
uiwait(warndlg('Hey, you really messed up!!!')); % Wait for user to click OK.
Otherwise it goes blasting ahead without waiting.

标签

提问:

2016-5-17

Community Treasure Hunt

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

Start Hunting!

Translated by