vc++基础班[10]---对话框响应鼠标及键盘消息

vc++基础班[10]---对话框响应鼠标及键盘消息
------------------------------------------ Begin ----------------------------------------
①、各种各样的常用鼠标消息:
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 来判断!

原文链接: vc++基础班[10]---对话框响应鼠标及键盘消息 版权所有,转载时请注明出处,违者必究。
注明出处格式:流沙团 ( https://www.gyarmy.com/post-277.html )

发表评论

0则评论给“vc++基础班[10]---对话框响应鼠标及键盘消息”