热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

鸡啄米之VS2010/MFC编程入门之二十六(常用控件:滚动条控件ScrollBar)

目录一、目的1、想学习滚动条控件ScrollBar,如此获得里面的数值,方便用在其他地方,比只输入变量方便多了一、参考:

目录

一、目的

1、想学习滚动条控件Scroll Bar,如此获得里面的数值,方便用在其他地方,比只输入变量方便多了

一、参考:

1、VS2010/MFC编程入门之二十六(常用控件:滚动条控件Scroll Bar)

①总结:good:超级好,能够实现,下面是我超级详细的操作过程

一、过程

1、创建MFC

1、添加滚动条控件Scroll Bar和编辑框

①滚动条控件名字(没有和鸡啄米的一样,为了就是自己测试):IDC_SCROLLBAR1

①编辑框名字(没有和鸡啄米的一样,为了就是自己测试):IDC_EDIT1

①保存时候会出现提示,点击是

1、滚动条添加变量:名字:m_horiScrollbar

①点击滚动条,右键

①然后头文件中就出现了这个新建的滚动条类

1、滚动条初始位置设置

①OnInitDialog:中编写滚动条,其中的SetDlgItemInt是设置编辑框,我的编辑框名字是IDC_EDIT1

 1、重载OnHScroll函数

①因为发现我们无法修改滚动条的数值,所以需要对其重载

1、运行效果

①拖拽这个滚动条,编辑框里面的数值也会变化






一、目的


1、想学习滚动条控件Scroll Bar,如此获得里面的数值,方便用在其他地方,比只输入变量方便多了


一、参考:


1、VS2010/MFC编程入门之二十六(常用控件:滚动条控件Scroll Bar)

http://www.jizhuomi.com/software/191.html


①总结:good:超级好,能够实现,下面是我超级详细的操作过程


一、过程


1、创建MFC


1、添加滚动条控件Scroll Bar和编辑框


①滚动条控件名字(没有和鸡啄米的一样,为了就是自己测试):IDC_SCROLLBAR1


①编辑框名字(没有和鸡啄米的一样,为了就是自己测试):IDC_EDIT1


①保存时候会出现提示,点击是


1、滚动条添加变量:名字:m_horiScrollbar


①点击滚动条,右键


①然后头文件中就出现了这个新建的滚动条类


1、滚动条初始位置设置


①OnInitDialog:中编写滚动条,其中的SetDlgItemInt是设置编辑框,我的编辑框名字是IDC_EDIT1

// 设置水平滚动条的滚动范围为1到100 m_horiScrollbar.SetScrollRange(1, 100); // 设置水平滚动条的初始位置为20 m_horiScrollbar.SetScrollPos(20); // 在编辑框中显示20 SetDlgItemInt(IDC_EDIT1, 20);


 1、重载OnHScroll函数


①因为发现我们无法修改滚动条的数值,所以需要对其重载

void CMyExample26Dlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{// TODO: 在此添加消息处理程序代码和/或调用默认值int pos = m_horiScrollbar.GetScrollPos(); // 获取水平滚动条当前位置 switch (nSBCode) { // 如果向左滚动一列,则pos减1 case SB_LINELEFT: pos -= 1; break; // 如果向右滚动一列,则pos加1 case SB_LINERIGHT: pos += 1; break; // 如果向左滚动一页,则pos减10 case SB_PAGELEFT: pos -= 10; break; // 如果向右滚动一页,则pos加10 case SB_PAGERIGHT: pos += 10; break; // 如果滚动到最左端,则pos为1 case SB_LEFT: pos = 1; break; // 如果滚动到最右端,则pos为100 case SB_RIGHT: pos = 100; break; // 如果拖动滚动块滚动到指定位置,则pos赋值为nPos的值 case SB_THUMBPOSITION: pos = nPos; break; // 下面的m_horiScrollbar.SetScrollPos(pos);执行时会第二次进入此函数,最终确定滚动块位置,并且会直接到default分支,所以在此处设置编辑框中显示数值 default: SetDlgItemInt(IDC_EDIT1, pos); return; } // 设置滚动块位置 m_horiScrollbar.SetScrollPos(pos); CDialogEx::OnHScroll(nSBCode, nPos, pScrollBar);
}

1、运行效果


①拖拽这个滚动条,编辑框里面的数值也会变化


推荐阅读
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • C语言注释工具及快捷键,删除C语言注释工具的实现思路
    本文介绍了C语言中注释的两种方式以及注释的作用,提供了删除C语言注释的工具实现思路,并分享了C语言中注释的快捷键操作方法。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 十大经典排序算法动图演示+Python实现
    本文介绍了十大经典排序算法的原理、演示和Python实现。排序算法分为内部排序和外部排序,常见的内部排序算法有插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。文章还解释了时间复杂度和稳定性的概念,并提供了相关的名词解释。 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
author-avatar
上海传安光通科技有限公司_839
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有