Matlab - Usar variables de una función en otra

 
Vista:
sin imagen de perfil

Usar variables de una función en otra

Publicado por Giselle (6 intervenciones) el 08/03/2014 05:06:41
Buenas noches

Estoy haciendo una GUI en ella a partir de edit text capture varios valores así

function segl_Callback(hObject, eventdata, handles)
% hObject handle to segl (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of segl as text
% str2double(get(hObject,'String')) returns contents of segl as a double

c=get(handles.segl,'string');
c=str2num(c);
if c<0 || c>60 errordlg({'No se puede tener valores mayores a 60 ni menores a 0 segundos'},'Mensaje de error')
end

Pero entonces necesito tomar la variable c y usarla en una nueva función que no esta en un botón porque es un proceso interno y se hará en otra GUI; como puedo hacer que mi otra GUI obtenga el valor de c?

Intenté varias cosas como salvar las variables, declararlas globales en ambas funciones; no se que estoy haciendo mal

Gracias
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
Imágen de perfil de Jorge De Los Santos
Val: 30
Ha disminuido su posición en 12 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Usar variables de una función en otra

Publicado por Jorge De Los Santos (213 intervenciones) el 08/03/2014 05:24:00
Hola Giselle.

Debería funcionar utilizando las variables globales...

Si pudieses subir o enviarme tus archivos sería más fácil localizar el error...

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
sin imagen de perfil

Usar variables de una función en otra

Publicado por Giselle (6 intervenciones) el 08/03/2014 05:28:13
Muchisimas gracias ya te los hago llegar al correo aquí registrado
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
Imágen de perfil de Jorge De Los Santos
Val: 30
Ha disminuido su posición en 12 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Usar variables de una función en otra

Publicado por Jorge De Los Santos (213 intervenciones) el 08/03/2014 06:37:35
Verás, estuve revisando un poco y creo que el detalle es que borras las variables en el callback de los botones "Siguiente" ... Para evitar borrar las variables de interés utiliza el comando "clearvars" de la siguiente manera, en lugar de clear all:

1
clearvars('-except', 'a', 'b', 'c');


Prueba modificando eso y si el error persiste puedes comentarlo y ya veremos que se puede hacer...

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
sin imagen de perfil

Usar variables de una función en otra

Publicado por Giselle (6 intervenciones) el 08/03/2014 15:58:40
Buenos días, intente lo del except y aunque corre sigo con el mismo inconveniente así que decidí hacer una prueba con handles, y quitando los botones de siguiente y demás
Para pasarlos de una función a otra dentro de la misma GUI asi

function constantes(hObject, eventdata, handles)
a=10;
handles.a=a;
b=5;
handles.b=b;
guidata(hObject, handles)

% --- Executes on button press in pushbutton1.

function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
a=10;
valor=handles.a;
valf=num2str(valor);
get(handles.pushbutton1,'string');
set(handles.text1,'string', valf);

Presenta el error

Reference to non-existent field 'a'.

Error in prueba>pushbutton1_Callback (line 87)
valor=handles.a;

Error in gui_mainfcn (line 96)
feval(varargin{:});

Error in prueba (line 42)
gui_mainfcn(gui_State, varargin{:});

Error in
@(hObject,eventdata)prueba('pushbutton1_Callback',hObject,eventdata,guidata(hObject))


Error while evaluating uicontrol Callback
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Usar variables de una función en otra

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 09/03/2014 11:14:09
hola Giselle
Con que valores estas ejecutando tu guide.
Quiero ejecutarlo para luego ver los posibles errores y arreglarlos.

Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]


http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1371532-FORMA_DE_APRENDER_MATLAB.html
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