Matlab - GUI, re-ejectuar un programa

   
Vista:

GUI, re-ejectuar un programa

Publicado por Fa (9 intervenciones) el 07/02/2012 11:06:00
Buenos días,

Estoy haciendo varias pruebas para implementar mi GUI. Únicamente he creado un Pushbutton de tal manera que al presionarlo se debe ejecutar una función .m. Sin embargo, la primera vez que pulso el botón la función se ejecuta sin problemas, pero si le doy por segunda vez me sale el siguiente error:


??? Error while evaluating uicontrol Callback
1
2
3
4
5
6
??? Undefined function or method 'main' for input arguments of type 'struct'.
 
Error in ==> @(hObject,eventdata)main('pushbutton1_Callback',hObject,eventdata,guidata(hObject))
 
 
??? Error while evaluating uicontrol Callback


Un saludo
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 JOSE JEREMIAS CABALLERO

GUI, re-ejectuar un programa

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3433 intervenciones) el 07/02/2012 14:28:29

HOla Fa.


Brindas muy poca informacion.
Por cumplir te puedo responder a tu pregunta, pero no creo que la respuesta sea acertada.




Saludos.
JOSE JEREMIAS CABALLERO

Servicios de programacion matlab


Asesor de Proyectos con Matlab
programador en matlab
"Detalladar sus preguntas, para recibir respuestas acertadas"
jjcc94@hotmail.com
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 Dave

GUI, re-ejectuar un programa

Publicado por Dave correa.dave30@gmail.com (934 intervenciones) el 07/02/2012 15:55:41
Hola Fa;

Respecto a tu consulta, la programación de funciones se hace en el archivo *.m que esta asociado a la interface grafica que estas creando, normalmente las funciones se crean a final del codigo autogenerado en el archivo y una vez que hayas creado la función la llamas o ejecutas con todos sus parametros de entradas en el boton que desees.

Te copio un ejemplo de ejecución de función y una fragmento de la función.

1
2
3
4
5
6
7
% --- Executes on button press in pushbutton_cargar.
function pushbutton_cargar_Callback(hObject, eventdata, handles)
Filename = handles.Filename;
PathFile = handles.PathFile;
ruta = handles.ruta;
 
[VAR,DATE,CABECERA]=read_auto(ruta,hObject,handles);


Un segmento de la función read_auto es

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function [VAR,DATE,CABECERA]=read_auto(Name,hObject,handles);
% Data=read_automatic(Name)
% READ_AUTO, se utiliza para leer datos.
% Donde
% La variable de entrada es:
% Name = nombre del archivo a procesar
% 
% Las variables de salida son:
% VAR = matriz con los datos:
%
% DATE = vector que contiene la referencia de fecha 
% CABECERA = vector con la información de cabecera de cada columna de datos
% 
% Autor: Dave Correa (correa.dave30@gmail.com)
 
fid=fopen(Name);
n=0;        Data=[]; cabecera=[];
visual=['Inicia la lectura de datos'];
set(handles.text_view,'string',' ')
set(handles.edit_cuenta,'string','0')
set(handles.text_view,'string','Inicia la lectura de datos')
pause(0.05)
 
while 1
    clear ni dni
    tline = fgetl(fid);
    if ~ischar(tline), break, end
    k = strfind(tline,',');
    ni=[0,k,length(tline)+1];
%...
end


Espero que sea de alguna ayuda.

Saludos
Dave Correa
correa.dave30@gmail.com
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
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

GUI, re-ejectuar un programa

Publicado por Santiago santiago_jeri_16@hotmail.com (5 intervenciones) el 16/02/2012 18:46:26
yo tambien tengo un problema similar, he creado varias interfaces programadas en sus respectivos archivos .m y cada una con un archivo .fig. Al ejecutar cada uno funciona a la perfeccion, pero luego quiero hacer otra interface tipo menu para que al seleccionar con un pushbotton se cierre este menu y se abra la interface q seleccionas, hasta ai funciona bien, pero luego quiero usar la interface q he seleccionado y me da un error el mismo q se muestra en tu pregunta.

si alguien me puede ayudar al respecto se lo agradesco de antemano
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