我定义了好些快捷键,比如Ctrl+Shift+P,Ctrl+Shift+D,这些快捷键都好用,即一直按着这些组合键,会一直执行我定义的操作。但是快捷键Ctrl+Shift+C有时候只能响应一次,持续按着这个组合键并不能持续执行我定义的操作。
请问这是为什么。

解决方案 »

  1.   


    通过资源文件定义的。程序中还定义了其它的快捷键,使用起来都正常,唯独这个Ctrl+Shift+C不好用。
      

  2.   

    你是怎么样定义的?
    再仔细检查一下,看看你用同样的方法的定义的。就Ctrl+Shift+C定义错了。
      

  3.   

    你也可以在PreTranslateMessage中处理看看行不行
    void CXXX::PreTranslateMessage(MSG* pMsg) 
    {
    if( pMsg->message == WM_KEYDOWN   )
    {    
    char nchar;
    nchar=pMsg->wParam;
    if(nchar=='C'&&(GetKeyState(VK_CONTROL)&0x80)&&&&(GetKeyState(VK_SHIFT)&0x80)) /按下Ctrl+C键
    {
    //你的操作函数
    return 1;
    }
    return CDialog::PreTranslateMessage(pMsg);
    }