VC++大虾留步。如何让对话框上的一个Combobox不响应鼠标的滚动?探索多种实现方法。
今天想实现这个功能。自己编写了一个函数。感觉不太好。是否有其他更好的方法。
所以请教各位大虾。代码越简单越清楚越好。
BOOL CEx001Dlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
if((CWnd::FromHandle(pMsg->hwnd))->GetParent() == GetDlgItem(IDC_COMBO1))
{
if(pMsg->message == WM_MOUSEWHEEL)
{
return TRUE;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
当然自己编写一个Combobox类也可以实现。单更加麻烦。
另外:
Combobox相应鼠标滚轴的是里面的Edit窗口。为什么这个消息没有现传递给
Combobox自己?
也就是上面的代码改成为这样什么不行。
if((CWnd::FromHandle(pMsg->hwnd))== GetDlgItem(IDC_COMBO1))