您的位置:首页 > 其它

Mfc 中多个SliderCtrl滑动事件的捕捉

2011-09-01 17:07 281 查看
[/b]

在Mfc中SliderCtrl控件直接是没有事件来获取当滑动时SliderCtrl的值,不过可以处理ON_WM_HSCROLL消息,在头文件中添加:

[/b]

afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);

[/b]

在cpp中的消息队列映射中添加:

[/b]

ON_WM_HSCROLL()

[/b]

最后添加处理函数:

[/b]

void CMusicPlayerDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// TODO: Add your message handler code here and/or call default

if(pScrollBar != NULL )
{

[/b]

// 强制转换成CSliderCtrl
CSliderCtrl* pSlider = (CSliderCtrl*)pScrollBar;

[/b]

// 根据CSliderCtrl ID 来判断是哪一个CSliderCtrl
if(pSlider->GetDlgCtrlID() == IDC_VOLUME)
{
long v = 10*pSlider->GetPos();
player.SetVolume(v);
CString ff;
ff.Format(_T("%d"),v);
aa.SetWindowTextW(ff);
}
}
}

[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: