给一个mfc的 鼠标键盘响应例子- static bool myVrWinMsgHandler(vrWindow *vrWin, vrWindow::Message id, int param1, int param2, int param3);
- m_pWin->setUserMessageHandler(myVrWinMsgHandler);
- bool CTB3DView::myVrWinMsgHandler(vrWindow *vrWin, vrWindow::Message id, int param1, int param2, int param3)
- {
- switch(id)
- {
- case vrWindow::MESSAGE_MOUSE_MOVE:
- {
- curPt.SetPoint(param1,param2);
- //for Rect Slected
- if(bDrawing)
- m_Rect.SetRect(startPt.x,startPt.y,curPt.x,curPt.y);
- }
- break;
- case vrWindow::MESSAGE_MOUSE_LEFT_DOWN:
- {
- bMouseDNstate=TRUE;
- //for Rect Slected
- startPt.SetPoint(param1,param2);
- m_Rect.SetRect(startPt.x,startPt.y,startPt.x+1,startPt.y+1);
- bDrawing=TRUE;
- }
- break;
- case vrWindow::MESSAGE_MOUSE_LEFT_UP:
- {
- bMouseUPstate=TRUE;
- //for Rect Slected
- bDrawing=FALSE;
- }
- break;
- case vrWindow::MESSAGE_MOUSE_RIGHT_DOWN:
- {
- bRMouseDown=TRUE;
- }
- break;
- case vrWindow::MESSAGE_MOUSE_MIDDLE_UP:
- {
- bMMouseUp=TRUE;
- }
- break;
- case vrWindow::MESSAGE_MOUSE_WHEEL:
- {
-
- int m=param1;
- int n=param2;
- }
- break;
- //default:
- //break;
- }
- vrWin->defaultMessageHandler(vrWin,id,param1,param2,param3);
- return true;
- }
复制代码 |