• Miércoles 8 de Mayo de 2024, 03:13

Autor Tema:  recordar estado pushbutton en una GUI interna  (Leído 1310 veces)

pjay

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
recordar estado pushbutton en una GUI interna
« en: Lunes 26 de Julio de 2010, 20:30 »
0
Hola colegas del matlab,

Desde hace varios dias, estoy pensando en el siguiente reto. Imaginen que tengo un GUI principal (GUI_1), con un pushbutton (button_main), el cual retorna otra GUI (GUI_2). Esta GUI_2 tiene dos botones (aceptar y cancelar), e info sobre configuracion. Casos:
- Si el usuario pincha en aceptar (en GUI_2), la info es salvada, GUI_2 se cierra, y el pushbutton de GUI_1 se pone a verde.
- Si el usuario pincha en cancelar (en GUI_2), la info no se salva, GUI_2 se cierra, y el pushbutton de GUI_1 se queda con el color gris q viene x defecto.
La cuestion: ¿Como el programa sabe si el usuario pincha en aceptar o en cancelar? (RECUERDA, el color se decide despues de que se cierre GUI_2).
¿Alguien podria ayudarme?
Puse este mismo mensaje en mathworks, y alguien puso algo de CSSMers, pero ni idea de lo q es eso, si alguien sabe algo....
Gracias de antemano.

Pedro

pjay

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: recordar estado pushbutton en una GUI interna
« Respuesta #1 en: Martes 27 de Julio de 2010, 11:23 »
0
Descubri la solucion, gracias al foro de mathworks, dejo escrito el codigo x si alguien se ve apurado:

GUI_1:

 function pushbutton_Callback(hObject, eventdata, handles)
    gui2; %it returns GUI_2
    waitfor(gui2);
    load('acept_cancel.mat');
    if b_Acept
        set(handles.pushbutton2,'BackgroundColor',[0 1 0]); %green colour
    %else, it keeps the default grey colour
    end
 
 GUI_2:
 
 function pushbutton1_Callback(hObject, eventdata, handles)
 %Button ACEPT
     b_Acept= true;
     save('datas.mat');
     save('acept_cancel.mat',b_Acept);
     close;
 
 function pushbutton2_Callback(hObject, eventdata, handles)
 %Button CANCEL
     b_Acept= false;
     save('acept_cancel.mat',b_Acept);
     close;

salu2