WIN32 API编程中,添加按钮后,就不再相应键盘消息,为什么?
szwpc 2005-06-21 11:40:06 参照Charles Petzold的书编写WIN32 API程序
我编写的是单文档程序。有键盘控制。为什么在我添加了按钮过后,并在程序运行中按了那个按钮,键盘消息就不在相应了?
…………………………………………………………
LRESULT CALLBACK WndProc (……)
{
switch (message)
{
…………………………………………………………
case WM_CREATE:
renew = CreateWindow(TEXT("button"),TEXT("New Game"),
WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON,
baseX + 17 * grid, baseY + grid,
100, 30,
hwnd, (HMENU)ID_RENEW,
((LPCREATESTRUCT)lParam) -> hInstance, NULL);
return 0 ;
……………………………………………………
……………………………………………………
case WM_KEYDOWN:
switch (wParam)
{
case VK_UP:
…… ;
break ;
case VK_DOWN:
…… ;
break ;
………… ;
………… ;
}
return 0 ;
……………………………………………………
……………………………………………………
case WM_DESTROY:
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc (……) ;
}
程序的大致的关键处结构就如上(其他地方没有错,就不写出来了),为什么我在WM_CREATE:中添加了CreateWindow(),添加一个按钮后,下面的WM_KEYDOWN就不再被相应了?
急!解决就给分。请大家帮忙啊!