CDialogBar中编辑框控件Ctrl+c,Ctrl+V不可用的解决办法

CDialogBar中编辑框控件Ctrl+c,Ctrl+V不可用的解决办法

CDialogBar中编辑框控件(Edit Control)中进行用Ctrl+C、Ctrl+V进行拷贝,粘贴操作会不可用。
其解决办法有二。

其一:
资源的Accelerator里的子项删除ID_EDIT_PASTE和ID_EDIT_COPY项就可以了,一般在IDR_MAINFRAME里。

其二:
重载PreTranslateMessage方法,其代码如下:
BOOL CToolBarDlg::PreTranslateMessage(MSG *  pMsg)
{
    
if (pMsg->message >= WM_KEYFIRST && // for performance
        pMsg->message <= WM_KEYLAST)
    
{
        
// Translate dialog key if applicable
        if(::IsDialogMessage(m_hWnd, pMsg))
            
return TRUE;
    }


    
return CDialogBar::PreTranslateMessage(pMsg);
}

这样,就可以响应了。

方法一来源于: http://topic.csdn.net/t/20051117/16/4400471.html
方法二来源于: http://www.codeguru.com/cpp/w-d/dislog/ddxddv/comments.php/c1997/?thread=25622

个人认为,方法二更为妥当一些。

你可能感兴趣的:(CDialogBar中编辑框控件Ctrl+c,Ctrl+V不可用的解决办法)