Matlab - Eliminar opción salir

   
Vista:

Eliminar opción salir

Publicado por Álvaro (20 intervenciones) el 14/11/2014 15:59:16
Buenas tardes,

Quisiera saber si existe la posibilidad de eliminar la opción de que una GUI pueda ser cerrada mediante el botón de salir de la parte superior derecha (el aspa roja de toda la vida), forzando así que tuviese que cerrarse mediante el comando exit.

Muchas gracias de antemano.

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 Jorge De Los Santos

Eliminar opción salir

Publicado por Jorge De Los Santos (212 intervenciones) el 14/11/2014 16:53:47
Hola Álvaro.


Para hacer lo que indicas debes definir una función que sea llamada cuando la ventana sea cerrada, para ello modifica la propiedad 'CloseRequestFcn' de la GUI, pasándole como "argumento" la referencia de la función que manejará el cerrado de la GUI. Por ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function EjemploGUI
figure('MenuBar','none',...
    'CloseRequestFcn',@close_fcn);
 
uicontrol('style','push',...
    'String','Close',...
    'Callback',@close_fcn);
 
    function close_fcn(src,~)
        if strcmp(get(src,'type'),'uicontrol')
            delete(gcf);
        end
    end
end


La GUI anterior sólo permite ser cerrada mediante el push button.


Saludos.

Jorge De Los Santos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Eliminar opción salir

Publicado por Álvaro (20 intervenciones) el 14/11/2014 17:04:42
Hola Jorge, y gracias por tu pronta respuesta,

Entiendo más o menos tu explicación, pero no se cómo llevarla al código exactamente, me explico:

He creado el push button en la GUI, con el nombre exit, y por lo tanto en el código se me generan las siguientes líneas:

1
2
3
4
5
% --- Executes on button press in exit.
function exit_Callback(hObject, eventdata, handles)
% hObject    handle to exit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)


Una vez aquí no entiendo muy bien como debería enlazar con lo que has explicado...

Muchas gracias y un saludo.
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

Eliminar opción salir

Publicado por Jorge De Los Santos (212 intervenciones) el 14/11/2014 17:32:29
Te adjunto un ejemplo hecho en GUIDE para que puedas observar como adaptarlo a tú código.


Saludos.

Jorge De Los Santos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar

Eliminar opción salir

Publicado por Álvaro (20 intervenciones) el 14/11/2014 17:38:53
Increíble, muchísimas gracias por tu ayuda una vez más Jorge.

Un saludo.
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