来问各位大侠一个有关问题!关于设计一个播放器的进度条的

来问各位大侠一个问题!关于设计一个播放器的进度条的
素材啥的都有了,但是我要怎么知道拖动的消息?

也就是这样的控件都会发生啥信息?

有个例子最好了!给思路也行。

需要补货鼠标的消息吗?

------解决方案--------------------
void MySlider::OnLButtonDown(UINT nFlags, CPoint point)   
{  
    // TODO: Add your message handler code here and/or call default  
    CSliderCtrl::OnLButtonDown(nFlags, point);  
    CRect   rectClient,rectChannel;   
    GetClientRect(rectClient);   
    GetChannelRect(rectChannel);   
    int nMax = 0;  
    int nMin = 0;  
    GetRange(nMin,nMax);  
    int nPos =     
        (nMax - nMin)*(point.x - rectClient.left - rectChannel.left)/(rectChannel.right - rectChannel.left);   
    SetPos(nPos);  
      
}  

------解决方案--------------------
引用:
void MySlider::OnLButtonDown(UINT nFlags, CPoint point)   
{  
    // TODO: Add your message handler code here and/or call default  
    CSliderCtrl::OnLButtonDown(nFlags, point);  
    CRect   rectClient,rectChannel;   
    GetClientRect(rectClient);   
    GetChannelRect(rectChannel);   
    int nMax = 0;  
    int nMin = 0;  
    GetRange(nMin,nMax);  
    int nPos =     
        (nMax - nMin)*(point.x - rectClient.left - rectChannel.left)/(rectChannel.right - rectChannel.left);   
    SetPos(nPos);  
      
}  


楼上的是mfc的,如果是win32的,你可以自己绘制一个
1、先创建一个Timer
case WM_CREATE:
SetTimer(hWnd, 0, 1000, NULL);
break;
2、处理这个定时器的消息
case WM_TIMER:
if (pos < 4000)
{
pos+=10;
InvalidateRect(hWnd, NULL, TRUE);
}
else
{
KillTimer(hWnd, 0);
}
3、case WM_PAINT:里面绘制进度条

当然你可以根据鼠标的坐标去设置
------解决方案--------------------
响应滚动条控件的WM_LButtonDown消息,然后里面获取进度来控制
------解决方案--------------------
有源码

链接