作者s910 (s910)
看板Programming
標題[問題] win32在跑迴圈等待回應時該如何關掉視窗
時間Wed Nov 24 16:54:01 2010
小弟目前開了一開對話視窗
開始執行迴圈後,UI就沒有辦法關掉
請問有沒有不用thread就可以定時讓主控權回到UI的方法呢?
程式大致長這樣
BOOL CALLBACK DlgProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
{
switch(Message)
{
case WM_INITDIALOG:
for(; ;){
//再跑迴圈的時候就關不掉視窗
}
break;
}
break;
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
return DialogBox(hInstance, MAKEINTRESOURCE(IDD_MAIN), NULL, DlgProc);
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.248.207.141
→ james732:不要用無窮迴圈(想辦法設個條件可以跳出) 114.35.184.77 11/24 17:49
→ teslare:main thread不能拿來做別的事 111.240.211.46 11/24 21:21
→ teslare:因為視窗message是main負責handle的 111.240.211.46 11/24 21:21
→ teslare:你的main在迴圈裡 ui當然沒反應 111.240.211.46 11/24 21:22