如果提示的答案是错误的格式或空,停止代码
6视图(30天)
显示旧的评论
嗨。我有一个提示,问五个问题。由于任何原因,如果用户输入一个空的答案或不正确的格式,代码应该停止并返回一个错误对话框弹出。我已经尝试了一些东西,但他们只工作如果所有的答案提示是空的,但我需要它,如果任何为空或不正确的格式,弹出的错误并停止代码。任何想法吗?下面是代码的一部分。
prompt_full = {“开始,结束时间(小时):“,“初始压力(psi):”,的初始浓度(十进制):,的氧气泄漏率(磅/小时):“,“#的节点:};
dlog_title =用户输入的;
num_lines = 1;
default_answer = {“[0,12]”,“13.9”,“0.241”,“.000211”,“20”};
回答= inputdlg (prompt_full、dlog_title num_lines default_answer);
如果cellfun (@isempty回答)
对话框(“错误”)
返回
结束
%如果isempty(回答),返回,结束;%取消如果空
值= str2double(回答);
如果isnan(值)%,他们进入了一个错误的输入或点击取消
对话框(“输入不足。请再试一次。”);
返回
结束
0评论
答案(2)
图像分析
2017年7月17日
试试这个片段。根据需要调整。
%问用户两个浮点数。
defaultValue = {“45.67”,“78.91”};
titleBar =输入一个值的;
userPrompt = {“输入浮点数1:”,“输入浮点数2:”};
caUserInput = inputdlg (userPrompt titleBar 1, defaultValue);
如果isempty (caUserInput),返回,结束;如果他们点击取消%纾困。
%从字符串转换为浮点数。
usersValue1 = str2double (caUserInput {1})
usersValue2 = str2double (caUserInput {2})
% usersValue1检查有效性。
如果isnan (usersValue1)
%他们没有输入一个数字。
%他们点击取消,或输入一个字符,符号,或别的东西不允许的。
%将默认从一个字符串,插到usersValue1。
usersValue1 = str2double (defaultValue {1});
消息= sprintf (”我说必须是一个数字。\ nTry替换用户。倪\将使用%。2f and continue.',usersValue1);
uiwait (warndlg(消息));
结束
%为usersValue2做同样的事情
% usersValue2检查有效性。
如果isnan (usersValue2)
%他们没有输入一个数字。
%他们点击取消,或输入一个字符,符号,或别的东西不允许的。
%将默认从一个字符串,插到usersValue2。
usersValue2 = str2double (defaultValue {2});
消息= sprintf (”我说必须是一个数字。\ nTry替换用户。倪\将使用%。2f and continue.',usersValue2);
uiwait (warndlg(消息));
结束