窗口响应问题
我用createwindowex函数来创建一个窗口 但是窗口是创建出来了 但是为什么我鼠标一移动到客户区或者点击的时候窗口就停止工作 白屏了 !求解啊
//注册窗口类
char szclassname[]="MAINCLASS";
WNDCLASSEX wnd;
wnd.cbSize=sizeof(wnd);
wnd.style=CS_HREDRAW;
wnd.lpfnWndProc=WndProc;
wnd.cbClsExtra=0 ;
wnd.cbWndExtra=0;
wnd.hInstance=NULL;
wnd.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wnd.hCursor=LoadCursor(NULL,IDC_ARROW);
wnd.hbrBackground=(HBRUSH)::GetStockObject(BLACK_BRUSH);
wnd.lpszMenuName=NULL;
//注意这个类型的问题
wnd.lpszClassName=LPCWSTR(szclassname);
wnd.hIconSm=NULL;
RegisterClassEx(&wnd);
//创建窗口
HWND hwnd=CreateWindowEx(0,LPCWSTR(szclassname),L"直接控屏",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,NULL,NULL);
if(hwnd==NULL)
{
MessageBox(NULL,L"C直接控屏",L"创建窗口出错",MB_OK);
return ;
}
SyshWnd=hwnd;
//显示窗口
ShowWindow(hwnd,SW_SHOW);
UpdateWindow(hwnd);
-----------------------------------------------------------------------
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wparam,LPARAM lparam)
{
int wmid,wmEvent;
switch(message)
{
case WM_COMMAND:
wmid=LOWORD(wparam);
wmEvent=HIWORD(wparam);
return DefWindowProc(hwnd,message,wparam,lparam);
break;
case WM_MOUSEMOVE:
break;
//窗口定时器响应
case WM_TIMER:
//MessageBox(0,L"Timer",L"响应",MB_OK);
break;
case WM_PAINT:
break;
case WM_RBUTTONUP:
break;
case WM_RBUTTONDOWN:
break;
case WM_LBUTTONDOWN:
break;
case WM_LBUTTONUP:
break;
default:
return DefWindowProc(hwnd,message,wparam,lparam);
}
return 0;
}