读书人

一个windows编程很简单的有关问题

发布时间: 2012-03-01 10:25:47 作者: rapoo

一个windows编程很简单的问题
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nShowCmd)
{
WNDCLASSEX wndclass;

wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
wndclass.cbSize=sizeof(WNDCLASSEX);
wndclass.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
wndclass.hIcon=LoadIcon(NULL,IDI_QUESTION);
wndclass.hIconSm=LoadIcon(NULL,IDI_QUESTION);
wndclass.hInstance=hInstance;
wndclass.lpfnWndProc=WinProc;
wndclass.lpszClassName= "abc ";//这儿没有有功(编译器没说,我自己
//设断点看到这儿没有赋值成功,但就是
//不知道为啥它不成功)
wndclass.lpszMenuName=NULL;
wndclass.style=CS_HREDRAW|CS_VREDRAW;

RegisterClassEx(&wndclass);

HWND hwnd;
hwnd=CreateWindow( "abc ", "title ",WS_OVERLAPPEDWINDOW,0,0,640,480,NULL,NULL,hInstance,NULL);

ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd);

MSG msg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}

return(0);
}

头一次写windows,一编译一大堆错误,改了老半天,终于能运行了,可是窗体就是不出来,急的我一头汗,这儿改改那儿改改还是不出来,只好请教大家了

[解决办法]
我编译通过了,
贴出你的错误来看看吧!
[解决办法]
后面没有错误
[解决办法]
starwy() ( ) 信誉:100 Blog 2007-01-26 16:18:26 得分: 0


wndclass.lpszClassName= "abc ";//这儿没有有功(编译器没说,我自己
//设断点看到这儿没有赋值成功,但就是
//不知道为啥它不成功)
wndclass.lpszMenuName=NULL;
================================================
这两句写反了,应该这样吧:
wndclass.lpszClassName = NULL;
wndclass.lpszMenuName = "abc ";//窗口类名
/////////////////////////////////
写反了,并不影响程序的结果吧!~
我试过了,编译成功


[解决办法]
====================================
sorry 说错了,没注意到,不是这个问题,我看错了,抱歉

对,不影响。我上面已经说看错了。。但是没有帮上忙,我看了半天,
没看出你的这段代码有什么问题。。
[解决办法]
没有回调函数当然不成功了.
即使你写个空的回调函数也行.
BOOL WINAPI CALLBACK WinProc(.....)
{
return DefWindowPrc(.....);
}
这样就可以了

读书人网 >C++

热点推荐