读书人

VC CreateWindowEx 创建窗口失败。程序

发布时间: 2014-01-22 14:50:12 作者: rapoo

VC CreateWindowEx 创建窗口失败。程序执行正常。

RT 程序执行正常。但是,窗口没有显示出来。求解决。下面是代码。


#include "stdafx.h"
#include "resource.h"
LRESULT CALLBACK WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
TCHAR clsName[MAX_PATH] = "XRY";

//设计窗口
WNDCLASSEX wndcls;
wndcls.style = CS_VREDRAW | CS_HREDRAW ;
wndcls.lpfnWndProc = WndProc;
wndcls.cbClsExtra = 0;
wndcls.cbWndExtra = 0;
wndcls.hInstance = hInstance;
//wndcls.hIcon = LoadIcon(NULL,IDI_WINLOGO);
wndcls.hIcon = LoadIcon(NULL,MAKEINTRESOURCE(IDI_WND_ICON));
wndcls.hIconSm = LoadIcon(NULL,MAKEINTRESOURCE(IDI_WND_ICON));
wndcls.hCursor = LoadCursor(NULL,IDC_ICON);
wndcls.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wndcls.lpszMenuName = NULL;
wndcls.lpszClassName = clsName;

//注册窗口
RegisterClassEx(&wndcls);

//创建窗口
HWND hwnd;
hwnd = CreateWindowEx(
WS_EX_CLIENTEDGE,
clsName,
"测试窗口",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,
400,300,
NULL,NULL,
hInstance,NULL);
//显示窗口
ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);
MSG msg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}

//过程
LRESULT CALLBACK WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch(uMsg)
{
case WM_CREATE:
break;
case WM_CLOSE:
DestroyWindow(hwnd);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
}



[解决办法]
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
///////////////////////////////////////////////////////
default:
break;
}
return DefWindowProc(hwnd,uMsg,wParam,lParam);
[解决办法]
系统 根据 这个 值 决定 如何 Create
[解决办法]
COUNT IN BYTE ,操作系统根据这个值去分配内存

读书人网 >VC/MFC

热点推荐