如何判断用户同时按下了 <Alt>+<Ctrl>+<Shift> 键? RT用下面的函数来捕捉,怎么做?void CTreeCtrlEx::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags){} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这样不行。void CTreeCtrlEx::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags){ if(nFlags & MK_SHIT & MK_DELETE) {func();} } BOOL CMyCtrl::PreTranslateMessage(MSG* pMsg){ if (pMsg->message == WM_KEYDOWN) { switch (pMsg->wParam) { // 如果是 ALT 键 case VK_ALT: { // 用 GetKeyState 来查看按键是否按下,如果按下,返回值小于0 Alt + Ctrl + Del if((GetKeyState(VK_CONTROL)<0)&&((GetKeyState(VK_SHIFT)<0)) GetParent()->PostMessage(WM_COMMAND, ID_MY_MSG_PROCESS, 0); // 发送消息通知处理 } break; case VK_CTROL: { // 用 GetKeyState 来查看按键是否按下,如果按下,返回值小于0 Alt + Ctrl + Del if((GetKeyState(VK_ALT)<0)&&((GetKeyState(VK_SHIFT)<0)) GetParent()->PostMessage(WM_COMMAND, ID_MY_MSG_PROCESS, 0); // 发送消息通知处理 } break; case VK_SHIT: { // 用 GetKeyState 来查看按键是否按下,如果按下,返回值小于0 Alt + Ctrl + Del if((GetKeyState(VK_ALT)<0)&&((GetKeyState(VK_CONTROL)<0)) GetParent()->PostMessage(WM_COMMAND, ID_MY_MSG_PROCESS, 0); // 发送消息通知处理 } break; //... 后面的消息列举不列举了 default: } return CMyCtrl::PreTranslateMessage(pMsg);} VS2010做的东西发给别人,都提示缺少MSVCP100D.dll文件,怎么破? vc的简单问题求点拨 初始化问题 声卡输出 CtabCtrl控件怎么平面显示 关于非模态对话框下的PtrList,请高手指点? 请高手解决:bigint转换成uint64位问题 为何错? Activex控件在IE7多tab上相互覆盖 求教 CDatabase 操作 EXCEL 基础问题 sdk类型转换 怎样将DOUBLE 或 INT 转换成 TCHAR 怎么实现void*的数据到HBITMAP的转换
void CTreeCtrlEx::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
if(nFlags & MK_SHIT & MK_DELETE)
{func();}
}
{
if (pMsg->message == WM_KEYDOWN)
{
switch (pMsg->wParam)
{
// 如果是 ALT 键
case VK_ALT:
{
// 用 GetKeyState 来查看按键是否按下,如果按下,返回值小于0 Alt + Ctrl + Del
if((GetKeyState(VK_CONTROL)<0)&&((GetKeyState(VK_SHIFT)<0))
GetParent()->PostMessage(WM_COMMAND, ID_MY_MSG_PROCESS, 0);
// 发送消息通知处理
}
break; case VK_CTROL:
{
// 用 GetKeyState 来查看按键是否按下,如果按下,返回值小于0 Alt + Ctrl + Del
if((GetKeyState(VK_ALT)<0)&&((GetKeyState(VK_SHIFT)<0))
GetParent()->PostMessage(WM_COMMAND, ID_MY_MSG_PROCESS, 0);
// 发送消息通知处理
}
break; case VK_SHIT:
{
// 用 GetKeyState 来查看按键是否按下,如果按下,返回值小于0 Alt + Ctrl + Del
if((GetKeyState(VK_ALT)<0)&&((GetKeyState(VK_CONTROL)<0))
GetParent()->PostMessage(WM_COMMAND, ID_MY_MSG_PROCESS, 0);
// 发送消息通知处理
}
break;
//... 后面的消息列举不列举了
default:
}
return CMyCtrl::PreTranslateMessage(pMsg);
}