BOOLEAN NDAAction(EventRecord *sysEvent, int code) { int event; static EventRecord localEvent; unsigned int eventCode; BOOLEAN result = FALSE; switch (code) { case runAction: return result; case eventAction: BlockMove((Pointer)sysEvent, (Pointer)&localEvent, 16); localEvent.wmTaskMask = 0x001FFFFF; eventCode = TaskMasterDA(0, &localEvent); switch(eventCode) { case updateEvt: BeginUpdate(gCalcWinPtr); DrawContents(); EndUpdate(gCalcWinPtr); break; case wInControl: HandleControl(&localEvent); break; case keyDownEvt: case autoKeyEvt: HandleKey(&localEvent); break; } break; case cutAction: case copyAction: case pasteAction: case clearAction: result = TRUE; HandleMenu(code); break; } return result; }
void Status_OnKeyDown(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam) { if (!HandleMsg(wParam,lParam)) //该按键盘不需要处理 { return ; } if (wParam == VK_BACK) { HandleBack(); } else if (wParam == VK_SPACE) { HandleSpace(); } //小键盘 else if (wParam >= VK_NUMPAD4 && wParam <= VK_NUMPAD9 && wParam != VK_NUMPAD6) { Handle_Small_Num(wParam); } // 0 - 9 else if (wParam >= 0x30 && wParam <= 0x39) { HandleNum(wParam,lParam); } // A - Z else if (wParam >= 0x41 && wParam <= 0x5A) { HandleChar(wParam,lParam); } else if (wParam == VK_CONTROL) { HandleControl(); } //上翻页 else if (wParam == VK_LEFT) { } //下翻 else if (wParam == VK_RIGHT) { } }