【发布时间】:2016-10-13 21:02:48
【问题描述】:
我想让用户选择一个文件(我知道我目前已经将它设置为选择一个文件夹)或手动输入数字。
prompt = input('Do you want to manually input values or select file? :','s');
s2 = {'file','folder'; 'f','choose'};
tf = strcmp(prompt,s2);
if tf >= 1
folder_name = uigetdir
folder_name = uigetdir(start_path)
folder_name = uigetdir(start_path,dialog_title)
else
prompt = {'Enter matrix size:','Enter colormap name:'};
dlg_title = 'Input';
num_lines = 1;
defaultans = {'20','hsv'};
answer = inputdlg(prompt,dlg_title,num_lines,defaultans);
end
我想允许用户输入单词file、folder、f 或choose 以及使用if 语句第一部分中的文件夹对话框,如果其中任何一个这四个字符串还没有输入,转到else语句。
由于我将它们保存为字符串,因此我使用strcmp。如果我运行代码并输入单词“文件夹”,我将得到一个矩阵,如下所示:
0 1
0 0
我的问题是我如何使用strcmp 来表示“如果矩阵的任何元素为 1”逻辑输出现在为 1 而不是 0。
感谢您的帮助!
【问题讨论】:
标签: matlab if-statement user-input prompt strcmp