10.对话框响应鼠标及键盘消息

 

①、各种各样的常用鼠标消息:
WM_MOUSEMOVE   鼠标移动位置
WM_LBUTTONDOWN  鼠标左键按下
WM_LBUTTONUP   鼠标左键弹起
WM_LBUTTONDBLCLK 鼠标左键双击
WM_RBUTTONDOWN  鼠标右键按下
WM_RBUTTONUP   鼠标右键弹起
WM_RBUTTONDBLCLK 鼠标右键双击
WM_MBUTTONDOWN 鼠标中键按下
WM_MBUTTONUP   鼠标中键弹起
WM_MBUTTONDBLCLK 鼠标中键双击
WM_MOUSEWHEEL   鼠标滚轮滚动

②、响应鼠标消息;

③、各种各样的常用键盘消息:
WM_KEYDOWN  键盘按键按下
WM_CHAR    可以打印字符
WM_KEYUP    键盘按键弹起

④、响应键盘消息:
◆ MFC对话框程序需重载 PreTranslateMessage 函数进行按键的处理,添加相关代码如下:

BOOL CMFCTestDlg::PreTranslateMessage(MSG* pMsg)
{
 // TODO: Add your specialized code here and/or call the base class
 if (pMsg->message == WM_KEYDOWN){
  switch(pMsg->wParam)
  {
  case VK_UP:
   MessageBox(_T("您按下了向上键!"));
   break;
  case VK_DOWN:
  default:break;
  }
 }

 return CDialog::PreTranslateMessage(pMsg);
}


◆ 虚拟键盘码见MSDN:Virtual-Key Codes
◆ WM_KEYDOWN 消息发送的 pMsg->wParam 字符都是大写的,如果要判断按下的字符是大写还是小写,可以在 WM_CHAR 消息中使用 ASCII 码对 pMsg->wParam 进行判断,或者借助函数:IsCharLower、IsCharUpper 来判断!//未实现

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值