Re: [問題] Win32 API SetTimer的問題
※ 引述《fungi8210 ( )》之銘言:
: qazq 講的沒錯,
: 因為你根本就沒有去把 invalidate 的 region 給 valid
: 所以你會瘋狂的收到 WM_PAINT, 那其他的 message 就送不進來.
還是不懂,有下面幾個問題
1. invalidate的region預設是哪裡?
2. BeginPaint()就可以把invalidate region給valid了嗎?
3. 為什麼會瘋狂收到WM_PAINT的訊息?
: change WM_PAINT to
: case WM_PAINT:
: BeginPaint(hWnd, &ps);
: EndPaint(hWnd, &ps);
: break;
: 記得在上面宣告
: PAINTSTRUCT ps = {0};
: ※ 引述《dcleft (SOSOYA)》之銘言:
: : 下面是完整的程式碼
: : http://rafb.net/p/MajU9c88.html
: : 重點的部份在這邊
: : LRESULT CALLBACK WndProc (...){
: : ...
: : case WM_CREATE:
: : SetTimer(hWnd,ID_MYTIMER,1000,NULL);
: : break;
: : case WM_TIMER:
: : if(wp!=ID_MYTIMER)
: : return (DefWindowProc(hWnd,msg,wp,lp));
: : MessageBox(hWnd,TEXT("Timer"),TEXT("no"),MB_OK|MB_ICONEXCLAMATION);
: : break;
: : ...
: : }
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.99.0.10
※ 編輯: dcleft 來自: 122.99.0.10 (04/09 07:06)
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章