Matlab gui错误

时间:2011-12-07 05:40:56

标签: matlab matlab-guide

这是我的gui的一部分,当我点击按钮

时执行
//
//
//
%VERIFICATION 
% --- Executes on button press in pushbutton9.
function pushbutton9_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton9 (see GCBO)
DIR=handles.directory;  
%angle=Angles(DIR);
area=nor_area(DIR);
%area=0.002;
%display(area)
Check=verify(area);
%display(Check);
if(Check==0)
%message = sprintf('nClick the OK button to continue');
msgbox('The signature belongs to the same person!!!');
else
msgbox('The signature is forged!!!');
end

//
// 
//

这是验证功能

//
//
//
function flag= verify(area)
%area=0.8969;
%take=area;
%display(take)
flag=0;
extract = xlsread('D:\Project\Image_processing\important\best.xlsx', 'CW4:CW17');
c=size(extract);
%display(c)
for k = 1:c
if (extract(k)==area)
      display(extract(k)); 
      flag=1;
    end 
end
%display(flag)
//
//
//

best.xlsx是excel文件,我从中检索值并与我从主gui函数获得的值进行比较。问题是即使我明确发送区域值它不起作用。如果我单独尝试单独运行gui并单独验证它会正确设置标志,但是当我一起运行时它没有正确设置标志。

1 个答案:

答案 0 :(得分:0)

再看一下verify函数中的以下几行:

c = size(extract);
for k = 1:c

我认为你真的想要

c = numel(extract);

因为size会返回一个向量。