Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Crear cuenta

Matlab - Error usando un handles

Vista:
Me gusta: Está pregunta es útil y esta clara
0
No me gusta: Está pregunta no esta clara o no es útil
 
Asunto:Error usando un handles
Autor:Lorena (37 intervenciones)
Fecha:22/02/2012 19:06:53
Hola a todos, estoy trabajando con una GUI y me está saltando un error con el uso de un handles al valor que ingreso en un edit box. Cuando aprieto un botón, uso un get para obtener el valor numérico ingresado en el edit box. Lo hago de la siguiente manera, dentro de la función callback del botón:

-----------------------------------------------------------------------------------------
canal_elegido_mf_str=get(handles.canal_elegido_mf,'String');
canal_elegido_mf=str2double(canal_elegido_mf_str);
-----------------------------------------------------------------------------------------

canal_elegido_mf es el tag del edit box.

Mi problema es que cuando presiono la primera vez el botón, puedo obtener el valor del edit box sin problema, pero cuando cambio el valor y vuelvo a presionar el botón, me salta el siguiente error:


??? Error using ==> get
Invalid handle object.

Error in ==> deteccion_espigas_automatica>Realizar_correlacion_mf_Callback at 1348
canal_elegido_mf_str=get(handles.canal_elegido_mf,'String');

Error in ==> gui_mainfcn at 75
feval(varargin{:});

Error in ==> deteccion_espigas_automatica at 43
gui_mainfcn(gui_State, varargin{:});

Error in ==>
guidemfile>@(hObject,eventdata)deteccion_espigas_automatica('Realizar_correlacion_mf_Callback',hObject,eventdata,guidata(hObject))


??? Error while evaluating uicontrol Callback


No me explico cómo es que funciona la primera vez, pero luego ya no toma el handles, espero que alguien pueda ayudarme.

Gracias

Lorena
Responder Subir
información
Otras secciones de LWP con contenido similar...
imágen de perfil
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:Error usando un handles
Autor:Dave correa.dave30@gmail.com (775 intervenciones)
Fecha:23/02/2012 21:44:15
Hola Lorena;

Te sugiero que utilices nombres más cortos y sin guiones, tanto para el caso de los nombres de los comando y las variables.

Espero que sea de alguna ayuda.

Saludos
Dave Correa
correa.dave30@gmail.com
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
Comentar Subir
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:Error usando un handles
Autor:Lorena (37 intervenciones)
Fecha:24/02/2012 15:48:23
Gracias Dave por tu sugerencia, me resulta raro que me salte este error porque en intentos anteriores no había tenido este problema, podía presionar el botón varias veces y hacía los cálculos. De todas maneras voy a intentar modificar el tag y ver si eso funciona.

Gracias!

Lorena
Comentar Subir
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:Error usando un handles
Autor:Lorena (37 intervenciones)
Fecha:24/02/2012 16:09:45
Bueno Dave, ya probé tu sugerencia pero no funcionó, si se te ocurre otra solución la aceptaré agradecida.

Saludos,

Lorena
Comentar Subir
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:Error usando un handles
Autor:geral (95 intervenciones)
Fecha:25/02/2012 23:48:32
Hola, creo que te refieres al edit text?
bueno en ese caso,

canal_elegido_mf_str=get(handles.canal_elegido_mf,'String');
canal_elegido_mf=str2double(canal_elegido_mf_str);

estan dentro del callback del edit text?
has guardado esas variables para usarlas en otro callback? ejem: global canal_eleg
esa es mi sugerencia, espero pueda ayudarte. suerte.
Comentar Subir
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:Error usando un handles
Autor:Lorena (37 intervenciones)
Fecha:28/02/2012 17:18:58
Hola Geral, sí, estoy trabajando con una casilla donde ingreso números y luego utilizo esos valores, supongo que es un edit text.

Las sentencias:
canal_elegido_mf_str=get(handles.canal_elegido_mf,'String');
canal_elegido_mf=str2double(canal_elegido_mf_str);

no están dentro del callback del edit text, sino dentro del callback de la función que utiliza esos valores.

Luego utilizo sólo la variable canal_elegido_mf en otros callbacks, para ello los llevo usando handles, es decir, handles.canal_elegido_mf=canal_elegido_mf; y luego en la función que los uso, la llamo con el handles: canal_elegido_mf=handles.canal_elegido_mf.

De esta manera me sigue saltando el error, ¿vos me sugerís que en lugar de usar handles para llevarlo entre callbacks la declare como variable global? ¿Así podría evitar el error?

Gracias!

Lorena
Comentar Subir
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:Error usando un handles
Autor:Lorena (37 intervenciones)
Fecha:02/03/2012 15:56:42
Listo gente, problema resuelto, el error era que estaba declarando mal una variable.

Gracias por las segerencias!

Saludos

Lorena
Comentar Subir
imágen de perfil
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:Error usando un handles
Autor:Dave correa.dave30@gmail.com (775 intervenciones)
Fecha:02/03/2012 16:14:10
Hola Lorena;

Me da mucho gusto que hayas solucionado tu problema, cualquier cosa siempre encontraras en el foro al menos una intensión de ayuda.

Saludos
Dave Correa
correa.dave30@gmail.com
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
Comentar Subir