现在我用一个Scroll Bar
我找了相关的资料已知道这些动作
SB_TOP/SB_BOTTOM 已滚动到顶/底部
SB_LINEUP/SB_LINEDOWN 向上/下滚动一行
SB_PAGEDOWN/SB_PAGEUP 向上/下滚动一页
SB_THUMBPOSITION/SB_THUMBTRACK 滚动条拖动到某一位置,参数nPos指明当前位置(参数nPos在其它的情况下是无效的)
SB_ENDSCROLL 滚动条拖动完成(用户松开鼠标)
可是其中不包括那种 在空间上任意位置点击,滚动条自动跑到那个位置的动作(我不知道我表达的清楚么)<11111111000111111111111111111111>
假设上面是我那个控件000代表这现在滑块的位置
我现在点两边的箭头< >和拖动滑块 都可以实现对我的一个编辑框的数相应的改变
我现在想要的动作是 点1的任意一个位置滑块可以跑到相应的位置 并且编辑框的数值也相应的改变
(愁死我了 真后悔小时候不好好学语文 希望你们能听懂)
我找了相关的资料已知道这些动作
SB_TOP/SB_BOTTOM 已滚动到顶/底部
SB_LINEUP/SB_LINEDOWN 向上/下滚动一行
SB_PAGEDOWN/SB_PAGEUP 向上/下滚动一页
SB_THUMBPOSITION/SB_THUMBTRACK 滚动条拖动到某一位置,参数nPos指明当前位置(参数nPos在其它的情况下是无效的)
SB_ENDSCROLL 滚动条拖动完成(用户松开鼠标)
可是其中不包括那种 在空间上任意位置点击,滚动条自动跑到那个位置的动作(我不知道我表达的清楚么)<11111111000111111111111111111111>
假设上面是我那个控件000代表这现在滑块的位置
我现在点两边的箭头< >和拖动滑块 都可以实现对我的一个编辑框的数相应的改变
我现在想要的动作是 点1的任意一个位置滑块可以跑到相应的位置 并且编辑框的数值也相应的改变
(愁死我了 真后悔小时候不好好学语文 希望你们能听懂)
ESB_DISABLE_LTUP 上/左箭头为禁止状态
ESB_DISABLE_RTDN 下/右箭头为禁止状态
ESB_DISABLE_BOTH 两个箭头都为禁止状态
如果需要在滚动条位置被改变时得到通知,需要在父窗口中定义对消息WM_VSCROLL/WM_HSCROLL的映射。方法为在父窗口类中重载afx_msg void OnVScroll( UINT nSBCode, UINT nPos, CScrollBar* pScrollBar )/afx_msg void OnHScroll( UINT nSBCode, UINT nPos, CScrollBar* pScrollBar ) 所使用的消息映射宏为:ON_WM_VSCROLL( ),ON_WM_HSCROLL( ),在映射宏中不需要指明滚动条的ID,因为所有滚动条的滚动消息都由同样的函数处理。在OnHScroll/OnVScroll的第三个参数会指明当前滚动条的指针。第一个参数表示滚动条上发生的动作,可取以下值: SB_TOP/SB_BOTTOM 已滚动到顶/底部
SB_LINEUP/SB_LINEDOWN 向上/下滚动一行
SB_PAGEDOWN/SB_PAGEUP 向上/下滚动一页
SB_THUMBPOSITION/SB_THUMBTRACK 滚动条拖动到某一位置,参数nPos指明当前位置(参数nPos在其它的情况下是无效的)
SB_ENDSCROLL 滚动条拖动完成(用户松开鼠标)
BOOL GetScrollInfo( int nBar, LPSCROLLINFO lpScrollInfo, UINT nMask =SIF_ALL );
获得Scroll的当前位置的值,在LPSCROLLINFO这个结构中。取得之后写到m_editBox中去,然后UpdateData(false)就能显示了。
动态显示的话请为SB_ENDSCROLL写对应的函数
UINT cbSize;
UINT fMask;
int nMin;
int nMax;
UINT nPage;
int nPos;
int nTrackPos;
} SCROLLINFO, *LPSCROLLINFO;
我现在想要的一个效果是对于控件比如
<11111111000111111111111111111111>
点任何一个1 000(也就是滑块)就可以自己滚动过去
平常我们用的滚动条不都用这个效果么
我现在自己写的控件 其他的效果都没问题 就这个没有
对于控件
<11111111000111111111111111111111>
我现在点000 左边的1 就和点<一个效果,一直到滑块跑到我点着个1的位置点000 右边的1 就和点>一个效果,一直到滑块跑到我点着个1的位置我只能这么说了 虽然好像越解释越乱