how to call variable from another function in matlab - Reference to non-existent field 'nameoffile'.

2 次查看(过去 30 天)
Hello,
I need use veriable from another function,
  • Undefined function or variable 'nameoffile'.*
i tried fix it, but i didnt.
function Imageupdate_Callback(hObject, eventdata, handles)
% hObject handle to Imageupdate (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
[FileName, Path] = uigetfile('*.bmp; *.png; *.jpg', 'Resim seçin' );
nameoffile = fullfile(Path,FileName);
imshow(nameoffile);
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
Pname = get(handles.PersonName,'String');
PSurname = get(handles.PersonSurname,'String');
Bday = get(handles.PersonBDay,'String');
Bplace = get(handles.PersonBP,'String');
Psex=get(handles.PGSex, 'SelectedObject');
Psex=get(Psex,'Tag');
PPhone = get(handles.PPhone,'String');
Padd = get(handles.Padd,'String');
% if isempty(Pname)
% fprintf('Error: Enter Text first\n');
% else
% Write code for computation you want to do
% end
connectface = database('facerecognition','root','');
PersonalID = exec(connectface,'Select max(PID) from person');
PersonalID = fetch(PersonalID)
PersonalID = PersonalID.data
close(connectface);
addaperson(Pname,PSurname,Bday,Bplace,Psex,PPhone,Padd);
addaface(nameoffile,PersonalID);

采纳的回答

Walter Roberson
Walter Roberson 2015-9-11
  2 个评论
Geoff Hayes
Geoff Hayes 2015-9-12
Gkhn - in your callback that reads the image, save it to the handles structure as
function Imageupdate_Callback(hObject, eventdata, handles)
[FileName, Path] = uigetfile('*.bmp; *.png; *.jpg', 'Resim seçin' );
nameoffile = fullfile(Path,FileName);
imshow(nameoffile);
handles.nameoffile = nameoffile;
guidata(hObject, handles);
Now, nameoffile is a field within the handles structure that other callbacks can access. So in your other callback, do the following
function pushbutton2_Callback(hObject, eventdata, handles)
% other stuff
addaperson(Pname,PSurname,Bday,Bplace,Psex,PPhone,Padd);
if isfield(handles,'nameoffile')
addaface(handles.nameoffile,PersonalID);
end

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by