为MFC单文档中的视图添加CScrollBar控件

1.在视图类的声明中加入如下代码,声明一个CScrollBar

CScrollBar m_scrollbarx;


2.如果生成的视图类没有窗口创建的消息响应函数OnCreate

那么自己可以通过类向导添加一个

在OnCreate函数加入如下码,将m_scrollbarx添加到视图上,并且对m_scrollbar进行一些初始化工作


RECT rect = {0,0,20,500};
m_scrollbar.Create(WS_CHILD | WS_VISIBLE | SB_VERT,rect,this,2);//WS_VISIBLE一定要加上,不然你就看不到m_scrollbar了
m_scrollbar.SetScrollRange(0,1);
m_scrollbar.SetScrollPos(50);


3.通过类向导,给视图创建WM_VSCROLL的消息响应函数

在函数中加入如下代码,就可以对m_scrollbar进行操作了

注:不要对系统的滚动块操作,会报错的。

int TempPos = pScrollBar->GetScrollPos();
switch(nSBCode)
{
case SB_THUMBPOSITION://拖动滑块
pScrollBar->SetScrollPos(nPos);
break;
case SB_LINEUP://点击上边的箭头
if(TempPos > 1)
{
TempPos--;
}
pScrollBar->SetScrollPos(TempPos);
break;
case SB_LINEDOWN://点击下边的箭头
if(TempPos<1000)
{
TempPos++;
}
pScrollBar->SetScrollPos(TempPos);
break;
}


这里创建的是垂直方向的CScrollBar,用同样的方法很容易创建出水平方向的CScrollBar了。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值