The interesting error I occur when I push the two button at the same time.

1 visualización (últimos 30 días)
In my gui code,there is a pushbutton1_callback function and a pushbutton2_callback function with a for loop and waitbar.
If I push the button2,the pushbutton2_callback will do the loop.Before the loop ends,I also push the button1. Then the pushbutton1_callback function will begin and pushbutton2_callback is paused.When the pushbutton1_callback ends,the pushbutton2_callback begins where it is paused.Also it gives out the error message 'Couldn't find waitbar handles'.
However,if I add the code 'pause(2)' at the end of pushbutton1_callback.The error message would not appear.It's very interesting. Do you know the answer?
  3 comentarios
Walter Roberson
Walter Roberson el 7 de Mzo. de 2013
waitbar() has calls to wait for events, so other pushbuttons are allowed to interrupt the process.
QiQin Zhan
QiQin Zhan el 7 de Mzo. de 2013
@Jing: The waitbar and loop are in the pushbutton2_callback.I'm sure the waitbar wasn't cloesed because if I add the code 'pause(2)' at the end of pushbutton1_callback,there would be no error message.
@ Walter Roberson: If I pause 2 seconds or longer,the code is runnnig correctly.What's more,if there are more data to proceed in pushbutton2_callback.The time to pause should be even longer,or the error message will appear again.How can I solve it?

Iniciar sesión para comentar.

Respuestas (1)

QiQin Zhan
QiQin Zhan el 7 de Mzo. de 2013
I think I've known what's wrong.The code in pushbutton1_callback opens a msgbox. If I comment the msgbox,there would be no error message.If I set a breakpoint where the msgbox generate,and close the msgbox before the pushbutton2_callback begins where it is paused.There would also be no error.Why is it so strange?
  4 comentarios
QiQin Zhan
QiQin Zhan el 7 de Mzo. de 2013
s=sprintf('Simulation in process:%d',floor(i/n*100));
waitbar(i / n, gcf, [s '%']);

Iniciar sesión para comentar.

Categorías

Más información sobre Dialog Boxes en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by