首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

为何CreateWindow返回空啊

2012-08-31 
为什么CreateWindow返回空啊~[codeC/C++][/code]#include windows.hTCHAR szTitle[100] _T(GE)//

为什么CreateWindow返回空啊~
[code=C/C++][/code]#include <windows.h>

TCHAR szTitle[100] = _T("GE");// The title bar text
TCHAR szWindowClass[500]=_T("GGG");// the main window class name
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
WNDCLASSEX wcex;

wcex.cbSize = sizeof(WNDCLASSEX);

wcex.style= CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc= WndProc;
wcex.cbClsExtra= 0;
wcex.cbWndExtra= 0;
wcex.hInstance= hInstance;
wcex.hIcon= NULL;
wcex.hCursor= NULL;
wcex.hbrBackground= (HBRUSH)(COLOR_WINDOW+1);
wcex.lpszMenuName= NULL;
wcex.lpszClassName= szWindowClass;
wcex.hIconSm= NULL;

ATOM S = RegisterClassEx(&wcex);

HWND hWnd = CreateWindow( szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);

if (!hWnd)
{
return FALSE;
}

ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);

return TRUE;
}

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
return 0;
//return DefWindowProc(hWnd, message, wParam, lParam);
}[code=C/C++][/code]

[解决办法]
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
//return 0;
return DefWindowProc(hWnd, message, wParam, lParam);
}
[解决办法]
应该是参数错了。

CreateWindow(
szWindowClass,
szTitle,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT,
500, 100,
NULL,
NULL,
hInstance,
NULL
);

详见http://msdn.microsoft.com/en-us/library/bb384843.aspx

热点排行