Когда вы нажимаете клавишу табуляции, чтобы переместить фокус с редактируемого текстового поля на другой объект uicontrol , будет вызвана функция обратного вызова редактируемого текстового поля.Таким образом, вам просто нужно поместить код для проверки текста и предупреждения пользователя о проблеме в функции обратного вызова вашего редактируемого текстового uicontrol.
Обратите внимание, что документация гласит, чтообратный вызов для uicontrol также будет вызываться при следующих условиях:
Нажатие другого компонента, строки меню или фона графического интерфейса пользователя.
Для однострочного редактируемого текстового поля нажмите Введите .
Для многострочного редактируемого текстового поля нажмите Ctrl + Введите .
Например, вот очень простая реализация обратного вызова, которая установит для цвета фона текста значение по умолчанию серый, если строка имеет значение 'yes'
или 'no'
или красным, если строка является чем-то еще:
function callback_fcn(hSource, eventData)
if ismember(get(hSource, 'String'), {'yes', 'no'})
set(hSource, 'BackgroundColor', [0.941176 0.941176 0.941176]);
else
set(hSource, 'BackgroundColor', 'r');
end
end