对窗口指定控件增加右键响应
如对话框中添加了一个button按钮:IDC_BUT1那么如何添加对其的鼠标右键的响应呢?
首先在对话框所在类CXXXDlg里面重载 PreTranslateMessage(MSG *pMsg) 接着在CXXXDlg.cpp中添加代码,如下: BOOL CXXXDlg::PreTranslateMessage(MSG *pMsg) { if(pMsg->message==WM_RBUTTONDOWN) //可以改为任何消息 { CRect rect; ::GetWindowRect(GetDlgItem(IDC_BUT1)->GetSafeHwnd(),&rect); //得到button所在的rect POINT pt; ::GetCursorPos(&pt); //得到鼠标动作的位置 if (PtInRect(&rect,pt)){ //判断鼠标动作是否在button范围之内 AfxMessageBox(_T("右键单击")); } } return CDialog::PreTranslateMessage(pMsg); } |

浙公网安备 33010602011771号