-
19-07-2015, 09:53 AM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Để nhận thông điệp định thời cho thủ tục xử lý thông điệp thì bạn phải thiết lập bộ định thời cho thông điệp bằng hàm SetTimer
Ví dụ theo mã của bạn :
case WM_CREATE:
SetTimer( can, 1, 500, NULL );
break;
Mã trên sẽ tạo 1 bộ định thời cho cửa sổ can có định danh là 1 và cứ nửa giây thủ tục xử lý lại nhận WM_TIMER ( tương đối thôi - bạn cứ xem như vậy ).
Nếu đã có tạo thì cũng nên có hủy :
case WM_DESTROY:
KillTimer( can, 1 );
PostQuitMessage(0);
break;View more random threads:
- SetClipboardData Trả Lại ClipBoard sau khi thực hiện GetClipboardData
- Giảm thời gian chậm trễ khi sử dụng WH_KEYBORAD_LL??
- Lỗi messagebox chỉ hiện lên khi người dùng nhấn ALT
- Làm cách nào để inject DLL vào mọi process ngay khi các process đó được bật
- Cách dùng đối tượng semaphore và chia sẽ thông tin giữa các thread?
- capCaptureStop VFW ghi hình camera trong MFC?
- Chương trình sử dụng Socket IPC trên mạng LAN
- chuyển đổi qua lại giữa full screen và winmode (game)
- Xác định trạng thái kết nối socket khi chương trình bị ngắt đột ngột?
- Check class của 1 soft
-
19-07-2015, 07:50 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Không nhạn được thông điệp thời gian
void ham_su_ly_thoi_gian()
{
}
LRESULT CALLBACK WndProc(HWND can, UINT btd, WPARAM wp, LPARAM lp)
{
switch(btd)
{
case WM_TIMER: //không nhận được thông điệp
ham_su_ly_thoi_gian();
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(can,btd,wp,lp);
}
return 0;
}
mình viết mã lệnh như trên nhưng không nhận được thông điệp WM_TIMER vậy cho hỏi có thiếu sót gì
-
20-07-2015, 07:15 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Cảm ơn đã giúp hoàn thành đồ án
Thông qua phân tích dữ liệu Google từ 86 quốc gia, mới đây, một công ty tại Anh đã công bố bảng xếp hạng kích tấc "cậu nhỏ" của các nước trên thế giới. Kết quả, hầu hết các nước xếp ở nhóm đầu của...
"Chim" của chàng trai Việt thuộc...