
消息映射及处理
TonyXQQ
如果我比别人看得远些,那是因为我站在巨人们的肩上。
展开
-
02在普通视图窗口中实现键盘字符的输入
ClientDC:客户区设备上下文TextOut:将一个字符串写到指定位置GetTextExtent:获取所选字体中指定字符串的高度和宽度void CKeyInputView::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) { // TODO: Add your message handler code here and/or ca转载 2011-12-14 23:15:09 · 498 阅读 · 0 评论 -
03创建和使用键盘插入符
WM_SETFOCUS:框架在获得输入焦点以后调用这个成员函数。如果要显示插入字符,CWnd必须调用适当的插字符函数。CreateSolidCaret:创建指定实心矩形插入符SetCaretPos将插入标记移动到指定的坐标上。ShowCaret:使插符在屏幕的当前位置上可见。void CCaretKeyDemoView::OnSetFocus(CWnd* pOldWnd) {转载 2011-12-14 23:32:03 · 559 阅读 · 0 评论 -
04使用程序模拟键盘输入
void CSimulateKeyDlg::OnInput() { // TODO: Add your control notification handler code here static BOOL bChangeFlag=TRUE; if(bChangeFlag) { SetTimer(1,500,NULL);//设置定时器 bChangeFlag =bChangeFla转载 2011-12-14 23:37:10 · 527 阅读 · 0 评论 -
01基本键盘操作——判断按键消息
WM_KEYDOWN:指示何时按非系统键void CBaseKeyDemoView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) { // TODO: Add your message handler code here and/or call default if(nChar==VK_SHIFT) //判断Shi转载 2011-12-14 23:04:30 · 865 阅读 · 0 评论 -
06向其他应用程序中发送键盘消息
FindWindow:返回拥有指定窗口类名或窗口名的窗口的句柄PostMessage:将一个消息放入(寄送)到与指定窗口创建的线程相联系消息队列里,不等待线程处理消息就返回,是异步消息模式。SetForegroundWindow:创建指定窗口的线程设置到前台,并且激活该窗口。keybd_event:该函数合成一次击键事件。系统可使用这种合成的击键事件来产生WM_KEYUP或WM_KEY转载 2011-12-15 08:01:17 · 1122 阅读 · 0 评论 -
08创建并设置鼠标光标
HCUROSR光标LoadStandardCursor:加载系统光标SetCursor:设置光标void CCursorMouseDemoView::OnLButtonDown(UINT nFlags, CPoint point) { // TODO: Add your message handler code here and/or call default CMainFra转载 2011-12-15 08:38:38 · 489 阅读 · 0 评论 -
07基本鼠标操作——判断鼠标消息
WM_LBUTTONDOWN:左键按下WM_LBUTTONUP:左键弹起WM_MOUSEMOVE:移动void CBaseMouseDemoView::OnLButtonDown(UINT nFlags, CPoint point) { // TODO: Add your message handler code here and/or call default bDrag=TR转载 2011-12-15 08:05:25 · 641 阅读 · 0 评论 -
05在对话框中实现键盘消息响应
PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗口的消息都要通过这里,比较常用,当你需要在MFC之前处理某消息时,常常要在这里添加代码。MFC消息控制流最具特色的地方是CWnd类的虚拟函数PreTranslateMessage(),通过重载这个函数,我们可以改变MFC的消息流程,甚至可以作一个全新的控制流出来。只有窗过消息队列的消息才转载 2011-12-14 23:49:58 · 568 阅读 · 0 评论