hur.cn - 华软网

 热门搜索

请问Ctrl+Home和Ctrl+End组合在VC++的PreTranslateMessage()函数中怎么表示??

  作者:未知    来源:网络    更新时间:2011/5/25
BOOL CTvPlayerDlg::PreTranslateMessage(MSG* pMsg)
{
        if (pMsg->wParam == VK_LEFT)
        {
           ..........
}
        if (pMsg->wParam == VK_RIGHT )
        {
          ...........
         }

    return CDialog::PreTranslateMessage(pMsg);
}

现在我想把VK_LEFT换成Ctrl+End来控制,把VK_RIGHT 换成Ctrl+Home来控制,该怎么表示??

请大家帮帮忙..
---华软 网友回答---
GetKeyState(VK_LCONTROL)、GetKeyState(VK_RCONTROL)能判断Ctrl状态
---华软网友回复---
然后呢
---华软网友回复---
BOOL bCntrl = GetKeyState(VK_CONTROL) < 0 ? TRUE : FALSE; 
if(bCntrl )
{
   if (pMsg->wParam == VK_HOME)
     //   do something
}
---华软网友回复---
C++">BOOL CXXXDlg::PreTranslateMessage(MSG* pMsg) 
{
// TODO: Add your specialized code here and/or call the base class
if((GetKeyState(VK_CONTROL) & 0x80) && (GetKeyState(VK_HOME) & 0x80))
{
AfxMessageBox(_T("Ctrl + Home"));
}
else if((GetKeyState(VK_CONTROL) & 0x80) && (GetKeyState(VK_END) & 0x80))
{
AfxMessageBox(_T("Ctrl + End"));
}
return CDialog::PreTranslateMessage(pMsg);
}

---华软网友回复---
谢谢!      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。