我的代码有问题。所有逻辑似乎都没问题,但在函数OnKeyDown中有错误,表示
在此之前不允许使用功能定义' {'令牌
在OnDestroy函数中同样是
预计' {'在输入结束时
下面是我的代码,我在MsgHandlers.h中的所有定义
void OnPaint(HWND hwnd, HDC hdc)
{
HPEN prevPen;
HBRUSH prevBrush;
prevPen = (HPEN)SelectObject(hdc, MyPen);
prevBrush = (HBRUSH)SelectObject(hdc, MyBrush);
for(int i=0;i<CurrentRect;i++)
Rectangle(hdc, MyRect[i].left, MyRect[i].top, MyRect[i].right, MyRect[i].bottom);
SelectObject(hdc, prevPen);
void OnKeyDown(HWND hwnd, WPARAM keyCode)
{
switch (keyCode)
{
case VK_LEFT:
break;
case VK_UP:
break;
case VK_RIGHT:
break;
case VK_DOWN:
break;
case 0x43: // C
break;
case 0x45: // E
EraseBkgnd ^= 0x00000001;
break;
case 0x49: // I
break;
case 0x52: // R
break;
case 0x53: // S
break;
}
//InvalidateRect(hwnd, NULL, EraseBkgnd);
}
void OnDestroy(HWND hwnd)
{
KillTimer(hwnd, 1);
DeleteObject(MyPen);
DeleteObject(MyBrush);
}
答案 0 :(得分:2)
好像忘记了OnPaint()
中的结束括号,它抱怨你将OnKeyDown()
放在其中
答案 1 :(得分:0)
似乎你在OnPaint
的末尾错过了一个“}”