帮我看下这个程序,完全是课本上的例子

来源:百度知道 编辑:UC知道 时间:2024/09/22 16:51:09
#include<windows.h>
#include<stdlib.h>
#include<string.h>
long WINAPI WndProc(HWND hWnd,UINT iMessage,UINT wParam,LONG lParam);
BOOL InitWindowsClass(HINSTANCE hInstance);
BOOL InitWindows(HINSTANCE hInstance,int nCmdShow);

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR LpCmdLine,int nCmdShow)
{
MSG Message;
if(!InitWindowsClass(hInstance))
return FALSE;
if(!InitWindows(hInstance,nCmdShow))
return FALSE;
while(GetMessage(&Message,0,0,0))
{
TranslateMessage(&Message);
DispatchMessage(&Message);
}
return Message,wParam;
}

long WINAPI WndProc(HWND hWnd,UINT iMessage,UINT wParam,LONG lParam)
{
HDC hDC;
HBRUSH hBrush;
HPEN hPen;
PAINTSTRUCT PtStr;
switch(iMessage)
{
case WM_PAINT:
hDC=(HDC)BeginPaint(hWnd,&PtStr);
SetMapMode(hDC,MM_ANISOTROPIC);

注意看出错信息

E:\Program Files\Draw1\Draw1.cpp(20) : error C2065: 'wParam' : undeclared identifier
第20行,wParam没有申明

Message后面应该是点,不是逗号,你抄的时候打错了吧

E:\Program Files\Draw1\Draw1.cpp(64) : warning C4002: too many actual parameters for macro 'CreateWindowA'
第64行,函数调用用了太多参数
hWnd=CreateWindow("WinFill",
"填充示例程序",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
0,
CW_USEDEFAULT,
0,
NULL, //这里3个NULL多了一个,删掉一个吧
NULL, //你手抄的时候抄糊涂了
NULL, //哈哈
hInstance,
NULL);