• Viernes 1 de Noviembre de 2024, 05:34

Autor Tema:  Función Pause  (Leído 3662 veces)

Kat00

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Función Pause
« en: Lunes 27 de Abril de 2009, 19:57 »
0
Hola a todos. Enhorabuena por el foro, hace que sirva de ayuda para mucha gente.

Bueno, ahí va mi problemilla.

Estoy usando el guide para crear un interfaz gráfico. Bueno, el caso es que en la pantalla hay un axes en la que va dibujando varias gráficas. En Matlab 2008a utilizaba la función pause y entonces al pulsar una tecla ibas cambiando de gráfica a gráfica. Ahora lo he tenido que hacer en Matlab 2006a y poniendo el mismo código, me obliga a pulsar la tecla en la ventana de Matlab y no funciona si la pulso estando el .gif como ventana activa.

No se si me he explicado muy bien, pero a ver si podéis ayudarme :)

Kat00

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Función Pause
« Respuesta #1 en: Viernes 1 de Mayo de 2009, 12:06 »
0
A ver, lo cuento de otra manera a ver si al menos me podeis dar una alternativa...

La idea es esta:

    t=((0:(length(data)-1))/44100).';
    plot(t(1:500),data(1:500,:));
    xlabel('t');
    legend('L','R');
%Esta gráfica se dibuja en un axes de la figura

    teclaAM=findobj(gcbf, 'tag','teclaAM');
    set (teclaAM,'Visible','on');

%teclaAM es un static text que mostrará Pulse una tecla para continuar

    pause;

%Y así , tras pulsar la tecla dibujará otra gráfica distinta en el mismo axes

    x=(data(:,1)+data(:,2))/2;
    hold on;
    plot(t(1:500),x(1:500),'.-r');
    legend('L','R','Señal mono');
    pause;

%Así sucesivamente

El problema es que para que funcione la tecla la tienes que pulsar estando activa la ventana principal de matlab y no la de mi .gif

A ver si ahora me he explicado mejor...Gracias

Geo

  • Miembro de PLATA
  • *****
  • Mensajes: 1011
  • Nacionalidad: mx
    • Ver Perfil
    • http://hsblog.mexchip.com
Re: Función Pause
« Respuesta #2 en: Viernes 1 de Mayo de 2009, 23:11 »
0
Parece más bien una variación de comportamiento entre versiones, ¿por qué debes pasar a una versión anterior?
La imaginación es el límite.
Hardware & Software | Mexchip

allisap

  • Miembro MUY activo
  • ***
  • Mensajes: 259
  • Nacionalidad: mx
    • Ver Perfil
Re: Función Pause
« Respuesta #3 en: Sábado 2 de Mayo de 2009, 18:38 »
0
una buena solucion y mas elegante es crear un PushButton en la ventana,
con esto al pulsar sobre el boton se pasaria a la siguiente grafica

Saludos
Victor Pasilla Campos

Kat00

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Función Pause
« Respuesta #4 en: Sábado 2 de Mayo de 2009, 19:44 »
0
He tenido que pasar a una versión anterior, porque estoy haciendo el programa para estudiante de la Universidad, y la versión más moderna que tienen es esa, la 2006a.

Lo del pushbutton ya lo pensé, pero como se repite varias veces, necesitaría callbacks diferentes para cada vez que se pulse al botón...

allisap

  • Miembro MUY activo
  • ***
  • Mensajes: 259
  • Nacionalidad: mx
    • Ver Perfil
Re: Función Pause
« Respuesta #5 en: Sábado 2 de Mayo de 2009, 20:11 »
0
Cita de: "Kat00"
Lo del pushbutton ya lo pensé, pero como se repite varias veces, necesitaría callbacks diferentes para cada vez que se pulse al botón...

no necesariamente, podrias usar un solo callback con una  funcion a la cual le envias como parametro un contador para determinar la grafica que corresponde

Saludos...

Victor Pasilla Campos