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

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 Comments

Is it the same waitbar in those two callback? And did you close it in pushbutton1_callback?
waitbar() has calls to wait for events, so other pushbuttons are allowed to interrupt the process.
@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?

Sign in to comment.

Answers (1)

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 Comments

Which form of waitbar() are you using? Are you passing in the handle to it or are you forcing it to search for the current handle?
I embed it in the GUI and it is used to show the process of loop.
s=sprintf('Simulation in process:%d',floor(i/n*100));
waitbar(i / n, gcf, [s '%']);

Sign in to comment.

Categories

Find more on App Building in Help Center and File Exchange

Tags

Asked:

on 7 Mar 2013

Community Treasure Hunt

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

Start Hunting!