各位高手,看看我这个程序,为什么窗口不出来啊!!!!!!!!!!!1急用

sql1 2005-03-22 11:24:20
#include<windows.h>
#include<windowsx.h>

LRESULT CALLBACK WindowProc(HWND hwnd,UINT msg,WPARAM wparam,LPARAM lparam);
int WINAPI WinMain(HINSTANCE hinstance,HINSTANCE hpreinstance,LPSTR lpcmdline,int ncmdshow)
{
WNDCLASSEX winclass;
winclass.cbSize=sizeof(WNDCLASSEX) ;
winclass.style= CS_HREDRAW|CS_VREDRAW;
winclass.lpfnWndProc=(WNDPROC)WindowProc;
winclass.cbClsExtra=0;
winclass.cbWndExtra=0;
winclass.hInstance=hinstance;
winclass.hIcon=NULL;
winclass.hCursor=NULL;;
winclass.hbrBackground=(HBRUSH)GetStockObject(GRAY_BRUSH);
winclass.lpszMenuName=NULL;
winclass.lpszClassName="WINCLASS1";
winclass.hIcon=NULL;
RegisterClassEx(&winclass);
HWND hwnd;
hwnd = CreateWindowEx(NULL,"WINCLASS1", "GUOYIWE WINDOWS", WS_OVERLAPPEDWINDOW,CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hinstance, NULL);


//hwnd=CreateWindow("WINCLASS1","GUOYIWE WINDOWS"
/// ,WS_OVERLAPPEDWINDOW,0,0,400,400,NULL,NULL,hinstance,NULL);
ShowWindow(hwnd,SW_SHOW);
UpdateWindow(hwnd);


MSG sMsg;
while (GetMessage(&sMsg, NULL, 0, 0))
{
TranslateMessage(&sMsg);
DispatchMessage(&sMsg);
}
return((int) sMsg.wParam);

// return 0;
}


LRESULT CALLBACK WindowProc(HWND hwnd,UINT msg,WPARAM wparam,LPARAM lparam)
{
switch(msg)
{
case WM_DESTROY:
return(0);
break;
}
return(DefWindowProc(hwnd,msg,wparam,lparam));
}
...全文
82 点赞 收藏 7
写回复
7 条回复
xl5338870 2005年03月22日
#include<windows.h>
#include<windowsx.h>

LRESULT CALLBACK WindowProc(HWND hwnd,UINT msg,WPARAM wparam,LPARAM lparam);
int WINAPI WinMain(HINSTANCE hinstance,HINSTANCE hpreinstance,LPSTR lpcmdline,int ncmdshow)
{
WNDCLASSEX winclass;
winclass.cbSize=sizeof(WNDCLASSEX) ;
winclass.style= CS_HREDRAW|CS_VREDRAW;
winclass.lpfnWndProc=(WNDPROC)WindowProc;
winclass.cbClsExtra=0;
winclass.cbWndExtra=0;
winclass.hInstance=hinstance;
winclass.hIconSm=NULL; // must be initialized
winclass.hCursor=NULL;;
winclass.hbrBackground=(HBRUSH)GetStockObject(GRAY_BRUSH);
winclass.lpszMenuName=NULL;
winclass.lpszClassName="WINCLASS1";
winclass.hIcon=NULL;
if ( !RegisterClassEx(&winclass) ) {
MessageBox(NULL, "error", "error", MB_ICONERROR);
}
HWND hwnd;
hwnd = CreateWindowEx(NULL,"WINCLASS1", "GUOYIWE WINDOWS", WS_OVERLAPPEDWINDOW,CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hinstance, NULL);


//hwnd=CreateWindow("WINCLASS1","GUOYIWE WINDOWS"
/// ,WS_OVERLAPPEDWINDOW,0,0,400,400,NULL,NULL,hinstance,NULL);
ShowWindow(hwnd,SW_SHOW);
UpdateWindow(hwnd);


MSG sMsg;
while (GetMessage(&sMsg, NULL, 0, 0))
{
TranslateMessage(&sMsg);
DispatchMessage(&sMsg);
}
return((int) sMsg.wParam);

// return 0;
}


LRESULT CALLBACK WindowProc(HWND hwnd,UINT msg,WPARAM wparam,LPARAM lparam)
{
switch(msg)
{
case WM_DESTROY:
PostQuitMessage(0); // 从这里退出!
return(0);
break;
}
return(DefWindowProc(hwnd,msg,wparam,lparam));
}
回复 点赞
sql1 2005年03月22日
各位高手帮忙分析一下吧
回复 点赞
yuchengliu 2005年03月22日
使用GetLastError()
看看取到的是什么值,可以判断是什么错误!
回复 点赞
sql1 2005年03月22日
这个我知道, 原因是什么啊,各位高手
回复 点赞
bobob 2005年03月22日
窗口创建失败
回复 点赞
Q19830409 2005年03月22日
强,该题我还是有点不明白,各位大哥帮帮,给解释
回复 点赞
captain_x 2005年03月22日
winclass.hIconSm=NULL;
最后一个winclass.hIcon改为winclass.hIconSm
就可以了
回复 点赞
发动态
发帖子
C++ 语言
创建于2007-09-28

3.1w+

社区成员

24.8w+

社区内容

C++ 语言相关问题讨论,技术干货分享
社区公告
暂无公告