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

조회 수: 1 (최근 30일)
QiQin Zhan
QiQin Zhan 2013년 3월 7일
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
Walter Roberson
Walter Roberson 2013년 3월 7일
waitbar() has calls to wait for events, so other pushbuttons are allowed to interrupt the process.
QiQin Zhan
QiQin Zhan 2013년 3월 7일
@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?

댓글을 달려면 로그인하십시오.

답변 (1개)

QiQin Zhan
QiQin Zhan 2013년 3월 7일
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
Walter Roberson
Walter Roberson 2013년 3월 7일
Please show your waitbar() command.
QiQin Zhan
QiQin Zhan 2013년 3월 7일
s=sprintf('Simulation in process:%d',floor(i/n*100));
waitbar(i / n, gcf, [s '%']);

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Dialog Boxes에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by