MFC入门示例之水平滚动条和垂直滚动条(CScroll Bar)
2024-10-20 16:11:33
初始化滚动条
1 //初始化滚动条
2 SCROLLINFO si = { 0 };
3 si.cbSize = sizeof(si);
4 si.fMask = SIF_RANGE | SIF_PAGE;
5 si.nMin = 0;
6 si.nMax = 100;
7 si.nPage = 10;
8 m_scroll.SetScrollInfo(&si);
滚动条事件
1 void CMFCApplication6Dlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
2 {
3 SCROLLINFO si = { 0 };
4 si.cbSize = sizeof(si);
5 si.fMask = SIF_ALL;
6 pScrollBar->GetScrollInfo(&si);
7
8 int nNewPos = si.nPos;
9 switch (nSBCode) {
10 case SB_THUMBTRACK:
11 nNewPos = nPos;
12 break;
13 case SB_LINELEFT:
14 nNewPos -= 1;
15 break;
16 case SB_LINERIGHT:
17 nNewPos += 1;
18 break;
19 case SB_PAGELEFT:
20 nNewPos -= si.nPage;
21 break;
22 case SB_PAGERIGHT:
23 nNewPos += si.nPage;
24 break;
25 default:
26 break;
27 }
28 if (nNewPos > si.nMax)
29 nNewPos = si.nMax;
30 if (nNewPos < si.nMin)
31 nNewPos = si.nMin;
32 pScrollBar->SetScrollPos(nNewPos);
33
34 CString s;
35 s.Format(TEXT("%d"), nNewPos);
36 m_pos = s;
37 UpdateData(FALSE);
38 CDialogEx::OnHScroll(nSBCode, nPos, pScrollBar);
39 }
最新文章
- 手机页面的 HTML<;meta>; 标签使用与说明
- 如何优化 FineUI 控件库的性能,减少 80% 的数据上传量!
- slide.js使用文档
- C#设计模式(13)——代理模式(Proxy Pattern)
- Data Structure 之 最优二叉树
- 程序员,一起玩转GitHub版本控制,超简单入门教程 干货2
- 我终于忍不住喷一下某些书了,关于Java传引用的XX言论
- SQLyog 注册码
- ACM 阶乘数位数
- mysql 密码过期问题
- 【原创】Linux服务器集群通过SSH无密码登录
- ROS机器人程序设计(原书第2版)补充资料 (陆) 第六章 点云 PCL
- 1070. Mooncake (25)
- ROS_Kinetic_04 ROS基础内容(一)
- python 产生token及token验证
- 补习系列(2)-springboot mime类型处理
- python迭代-如何对迭代器做切片操作
- Sqlite3数据库查看工具
- 【三分】light bulb(zoj3203)
- 【洛谷p1012】拼数
热门文章
- Go语言核心36讲(Go语言实战与应用一)--学习笔记
- Centos8 Docker部署ElasticSearch集群
- NOIP2021游记(退役记)
- [bzoj2743]采花
- vue中 has no matching end tag.
- 9.1 k8s pod版本更新流程及命令行实现升级与回滚
- 2017年最有前景的十大IT职业岗位
- 洛谷 P6060 - [加油武汉]传染病研究(数论)
- Atcoder Grand Contest 038 F - Two Permutations(集合划分模型+最小割)
- 回文字符串 Manacher