sliderbar的拖动响应的是那一个消息? 我想在拖动slider上面的滑块的时候画一条由滑块延伸出来的虚线,怎么实现啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 要响应对话框的WM_HSCROLL消息,用其中的参数pScrollBar来判断是那个在滚动,为NULL的话是对话框的标准滚动条,其它的自己来判断。如下例:void CDockForm::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) { // TODO: Add your message handler code here and/or call default if (pScrollBar != NULL) // 为NULL的话是对话框的标准滚动条 { CSliderCtrl *pwndSlider = (CSliderCtrl*)GetDlgItem(IDC_SLIDER_MAXDELTA); if (pScrollBar->GetSafeHwnd() == pwndSlider->GetSafeHwnd()) { CString strDelta; strDelta.Format("%d", pwndSlider->GetPos()); m_wndMaxDelta.SetWindowText(strDelta); } } CFormView::OnHScroll(nSBCode, nPos, pScrollBar);} 参考:void CMyPlayerDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) { // TODO: Add your message handler code here and/or call default if(pScrollBar->GetSafeHwnd() == m_SliderGraph.GetSafeHwnd()) { if(m_FilterGraph) { double duration=1.; m_FilterGraph->GetDuration(&duration); double pos=duration *m_SliderGraph.GetPos()/1000.; m_FilterGraph->SetCurrentPosition(pos); } } else if(pScrollBar->GetSafeHwnd() == m_AudioVol.GetSafeHwnd() && m_bHaveSound) { int pos = m_AudioVol.GetPos(); m_FilterGraph->SetAudioVolume(pos-10000); }} 求助一个小问题,如何把多个写好的程序整合? 应用程序运行没问题,但是在DEBUG里面就有问题了,怎么办? win32的toolbar和statusbar 有谁知道CA中国这个公司怎么样 GetOpenFileName函数出错 有没有什么好用的可以截获本机上某一个程序的所有ip 包的工具? 哈哈非技术类版我也升级了.2角哈哈 来接分呀. mfc中的rich edit2使用问题~ 一个关于COLOR的问题 绝对送分!win2000下如何Kill进程inetinfo.exe 窗口互访问题 请问DECLARE_DYNAMIC和DECLARE_DYNCREATE的区别?
{
// TODO: Add your message handler code here and/or call default
if (pScrollBar != NULL) // 为NULL的话是对话框的标准滚动条
{
CSliderCtrl *pwndSlider = (CSliderCtrl*)GetDlgItem(IDC_SLIDER_MAXDELTA);
if (pScrollBar->GetSafeHwnd() == pwndSlider->GetSafeHwnd())
{
CString strDelta;
strDelta.Format("%d", pwndSlider->GetPos());
m_wndMaxDelta.SetWindowText(strDelta);
}
}
CFormView::OnHScroll(nSBCode, nPos, pScrollBar);
}
void CMyPlayerDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// TODO: Add your message handler code here and/or call default
if(pScrollBar->GetSafeHwnd() == m_SliderGraph.GetSafeHwnd())
{
if(m_FilterGraph)
{
double duration=1.;
m_FilterGraph->GetDuration(&duration);
double pos=duration *m_SliderGraph.GetPos()/1000.;
m_FilterGraph->SetCurrentPosition(pos);
}
}
else if(pScrollBar->GetSafeHwnd() == m_AudioVol.GetSafeHwnd() && m_bHaveSound)
{
int pos = m_AudioVol.GetPos();
m_FilterGraph->SetAudioVolume(pos-10000);
}
}