Azzera filtri
Azzera filtri

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

2 visualizzazioni (ultimi 30 giorni)
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);

Risposta accettata

Walter Roberson
Walter Roberson il 11 Set 2015
  2 Commenti
Geoff Hayes
Geoff Hayes il 12 Set 2015
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

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by