No Find CSpliderCtrl
only CSplitterWnd  但与"滑块"没有关系Is CScrollBar?  

解决方案 »

  1.   

    我在atl时这样用的
    NOTIFY_HANDLER(IDC_SLIDER1, NM_RELEASEDCAPTURE, OnSlinderClick)
    到msdn中去查消息吧NM_RELEASEDCAPTURE
      

  2.   

    原来是 CSliderCtrl  你拼写错了
    相应WM_HSCROLL消息void C???::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
    {         
    switch (nSBCode)
    {
    case SB_TOP:
    x = 0;
    break;
    case SB_BOTTOM:
    x = INT_MAX;
    break;
    case SB_LINEUP:
    x -= m_lineSize.cx;
    break;
    case SB_LINEDOWN:
    x += m_lineSize.cx;
    break;
    case SB_PAGEUP:
    x -= m_pageSize.cx;
    break;
    case SB_PAGEDOWN:
    x += m_pageSize.cx;
    break;
    case SB_THUMBTRACK:
    x = nPos;
    break;
    }
    //.......
    }
      

  3.   

    FMD(Niko) :我是拼写错了!问题是我在哪里可以找到OnHScroll函数?你调用的恐怕是它的父对象[窗体]的函数了?CSLIDER类向导中没有提供该函数它能响应的消息是
    NM_OUTOFMEMORY
    NM_RELEASEDCAPTURE
    NM_COSTOMDRAW 
    没有NM_HSROLL之类的消息 ????????
      

  4.   

    See This :
    A slider control notifies its parent window of user actions by sending the parent WM_HSCROLL messages. You can override the parent'sOnHScroll member function to handle these messages. This function will be passed a notification code, the position of the slider, and a pointer to theCSliderCtrl object. CSliderCtrl  向父窗口发送WM_HSCROLL消息
    所以,在父窗口中添加了OnHScroll
      

  5.   

    可否给我一段具体的代码?我水平有限?FMD,多谢你了!
      

  6.   

    以MFC建立的对话框程序为例:
    ①对话框模板添加一个Slider滚动条 ,指定ID_????
    ②使用ClassWizard对对话框类添加 对WM_HSCROLL 的消息处理函数
    ③在消息处理函数中书写对具体不同动作的反应
    void C???::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
    {    if (pScrollBar == NULL || pScrollBar->GetDlgCtrlID() != ID_????)
              return ; //其他滚动条发的
           
        switch (nSBCode) //动作
        {
        case SB_TOP:
            MessageBox("到头了");
            break;
        case SB_BOTTOM:
             MessageBox("到首了");
            break;
        case SB_PAGEUP:
            MessageBox("后翻页");
            break;
        case SB_PAGEDOWN:
           MessageBox("前翻页");
            break;
        case SB_LINEUP:
          MessageBox("前进");
            break;
        case SB_LINEDOWN:
          MessageBox("后退");
            break;
        case SB_THUMBTRACK:
           MessageBox("拖动");
            break;
        }
        //.......
    }