作者adrianshum (Alien)
看板C_and_CPP
标题Re: [问题] Sleep()的问题~
时间Fri Nov 6 20:09:05 2009
※ 引述《karta031736 (猪怕龙)》之铭言:
: 我有一些程式码 如下
: if(CharData[0].state == CCharData::dead){
: if (GGTexture.GetTexture()){
: GGTexture.DrawScreen(pD3DDevice, 0, 0, 640, 480);//显示GameOver的图
: }
: Sleep(2000); //睡眠 2 秒
: PostQuitMessage(0); //关闭视窗
: }
: 上面程式是说 我有一个游戏角色CharData[0] 当他的状态变成死亡时 我要让他会
: 呼叫并显示GameOver的图 然後延迟两秒关闭视窗
: 可是 程式他都反过来先延迟两秒在显示GameOver的图然後瞬间关闭说.....
: 我还不是很懂sleep() 麻烦会的人教教我该怎麽改 又或者不用sleep()改用其他什麽函式??
: 请大家给我意见~
: 结论是 我希望当角色死亡时 视窗显示GameOver的图 经过2秒後再关闭视窗
算是 FAQ 级了...
你block 了 UI thread 了.
不要在 event handler 里面 sleep
你可以利用 timer 之类, 让它两秒後做别的东西.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 202.155.236.82