您好,欢迎来到飒榕旅游知识分享网。
搜索
您的当前位置:首页c++ ScrollBar的使用

c++ ScrollBar的使用

来源:飒榕旅游知识分享网

在OnInitDialog中增加下面代码 

SCROLLINFO si = {0};
	si.cbSize = sizeof(si);
	si.fMask = SIF_RANGE|SIF_PAGE;
	si.nMin = 0;
	si.nMax = 100;
	si.nPage = 10;

	m_scroll.SetScrollInfo(&si);

处理对话框的HSScroll消息 

void CDemoDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值

	SCROLLINFO si= {0};
	si.cbSize = sizeof(si);
	si.fMask = SIF_ALL;
	pScrollBar->GetScrollInfo(&si);

	int nNewPos = si.nPos;

	switch(nSBCode)
	{
	case SB_THUMBTRACK:
		nNewPos = nPos;
		break;
	case SB_LINELEFT:
		nNewPos -= 1;
		break;
	case SB_LINERIGHT:
		nNewPos += 1;
		break;
	case SB_PAGELEFT:
		nNewPos -= si.nPage;
		break;
	case SB_PAGERIGHT:
		nNewPos += si.nPage;
		break;
	default:
		break;
	}

	if(nNewPos > si.nMax)
		nNewPos = si.nMax;
	if(nNewPos < si.nMin)
		nNewPos = si.nMin;

	pScrollBar->SetScrollPos(nNewPos);

	CString s;
	s.Format(_T("%d"), nNewPos);
	m_pos = s;
	UpdateData(FALSE);

	CDialog::OnHScroll(nSBCode, nPos, pScrollBar);
}

 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务