Matlab - diferencia entre hObject & handles

   
Vista:

diferencia entre hObject & handles

Publicado por ALVARO SANDOVAL (1 intervención) el 16/06/2010 23:28:47
Buen día tengan, necesito saber cuál es la diferencia en las líneas de instrucción donde se encuentra hObject y handles, no entiendo su diferencia. En la segunda y tercera fila.

function uno_Callback(hObject, eventdata, handles)
sum1=str2double(get(hObject,'String')); %???
sum2=str2double(get(handles.dos,'String')); %???
if isnan(sum1)
errordlg('El valor debe ser numérico','ERROR')
set(handles.uno,'String',0);
sum1=0;
end
if isnan(sum2)
errordlg('El valor debe ser numérico','ERROR')
set(handles.dos,'String',0);
sum2=0;
end
suma=sum1+sum2;
set(handles.resp,'String',suma);
guidata(hObject, handles);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:diferencia entre hObject & handles

Publicado por Julian cuintaco (75 intervenciones) el 18/06/2010 21:33:13
Compañero, en la segunda línea de código, HOBJECT hace referencia al identificador del objeto que está actualmente en ejecución, en este caso, al objeto de tipo EDIT TEXT. Toda la sentencia lo que hace es convertir el texto ingresado en ese EDIT TEXT, que es de tipo STRING a tipo numérico DOUBLE.

En la siguiente línea de código se realiza lo mismo, capturar el texto ingresado, pero esta vez en otro EDIT TEXT, por eso el identificador de ese objeto, en este caso es, HANDLES.DOS.

Saludos, Julian...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:diferencia entre hObject & handles

Publicado por Julian cuintaco (75 intervenciones) el 18/06/2010 21:39:15
Se me olvidaba, HANDLES es la estructura que se pasa como argumento de entrada a todas las funciones que integran la GUI, por ello, si necesitas pasar una variable del espacio de trabajo de una función a otra, debes usar la sintaxis HANDLES.Nombre_Variable.

y al final guardar la estructura HANDLES con la instrucción:

guidata(hObject, handles);

Saludos, Julian...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:diferencia entre hObject & handles

Publicado por Sebastian (1 intervención) el 09/09/2010 22:55:22
Mirá, hay cosas que me faltab saber bien profundamente sobre GUI, pero en este caso la diferencia es que hObject se está refiriendo al objeto en el que se encuentra el Callback, en este caso estas dentro de "uno", entonces siempre que quieras manejar al objeto "uno" (handles) dentro de su propio callback se realiza con hObject.

En este caso se ve que handles.dos esta manejando a el objeto dos, pero si estuvieras manejando a dos dentro de su propio callback, lo manejarias utilizando hObject.

Espero que me hayas entendido.

Saludos.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar