如何将变量A
从browseBtn_Callback
函数传递到runBtn_Callback
函数?我需要点击运行按钮来生成结果,但下面的示例代码将自动生成结果而不点击按钮:
function browseBtn_Callback(hObject, eventdata, handles)
A = load('new2.txt');
runBtn_Callback(hObject, eventdata, handles, A);
function runBtn_Callback(hObject, eventdata, handles, A)
B = get(handles.edit1, 'String');
compare = strcmp(A,B);
if(compare == 1)
set(handles.result, 'String', 'Correct', 'ForegroundColor', 'green');
else
set(handles.result, 'String', 'Incorrect', 'ForegroundColor', 'red');
end
答案 0 :(得分:1)
使用handles
参数存储A
作为图的属性。在此处阅读此选项以及其他选项:http://www.mathworks.com/help/matlab/ref/guidata.html
您需要做的另一件事是不直接从runBtn_Callback
内调用browseBtn_Callback
- 这就是它立即运行的原因。摆脱该行,然后只有在单击按钮时才会执行该功能。
function browseBtn_Callback(hObject, eventdata, handles)
handles.A = load('new2.txt');
function runBtn_Callback(hObject, eventdata, handles)
B = get(handles.edit1, 'String');
compare = strcmp(handles.A,B);
if(compare == 1)
set(handles.result, 'String', 'Correct', 'ForegroundColor', 'green');
else
set(handles.result, 'String', 'Incorrect', 'ForegroundColor', 'red');
end