vs2010 c++学习(1):滚动条的设计总结

vs2010 c++学习(1):滚动条的设计总结

ID:11508139

大小:168.50 KB

页数:5页

时间:2018-07-12

vs2010 c++学习(1):滚动条的设计总结_第1页
vs2010 c++学习(1):滚动条的设计总结_第2页
vs2010 c++学习(1):滚动条的设计总结_第3页
vs2010 c++学习(1):滚动条的设计总结_第4页
vs2010 c++学习(1):滚动条的设计总结_第5页
资源描述:

《vs2010 c++学习(1):滚动条的设计总结》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、VS2010C++学习(1):滚动条的设计总结学习VC++编制的滚动条程序.。一、主要内容:1.对话框中的滚动条设计;2.编辑框中的滚动条设计;3.列表框中的滚动条设计;二、设计实现:1、对话框中的滚动条设计;·在资源编辑器中,选择在属性对话框中的水平滚动和垂直滚动样式。·选择调整大小的边框样式,以使该对话框可调整其大小。·重写WM_VSCROLL和WM_HSCROLL消息处理程序。·重写设置滚动条区域,如果大小减小到小于原始大小的WM_SIZE消息处理程序。名称属性BorderResizingHorizontalScrollbarTrueVerticalScrollbarTrue1)添

2、加成员变量到对话框类中intm_nCurHeight;//存储对话框中的当前高度intm_nScrollPos;//存储当前垂直滚动位置intm_nCurWidth;//存储对话框中的当前宽度intm_hScrollPos;//存储当前水平滚动位置CRectm_rect;//对话框原始大小2)若要获取原始窗口的大小,请将下行添加到OnInitDialog方法:GetWindowRect(m_rect);m_nScrollPos=0;//垂直滚动位置0m_hScrollPos=0;//水平滚动位置03)OnSize方法中添加消息处理程序。判断当前对话框的大小,并与对话框原始大小进行比较。然

3、后计算出垂直和水平滚动条的最大值,写入SCROLLINFO中去。4)将WM_VSCROLL消息的消息处理程序添加到OnVScroll方法中,WM_HSCROLL消息的消息处理程序添加到OnHScroll方法中。设计响应滚动条的事件。5)使用的函数lSetScrollInfo(SB_HORZ,&hsi,TRUE);lSetScrollPos(SB_HORZ,m_hScrollPos,TRUE);lScrollWindow(-nDelta,0);函数原型:intSetScrollInfo(HWNDhWnd,intfnBar,LPSCROLLINFOlpsi,BOOLfRedraw);函数功能

4、:该函数设置滚动条参数,包括滚动位置的最大值和最小值,页面大小,滚动按钮的位置。如被请求,函数也可以重画滚动条。参数:hWnd:滚动条控件或带标准滚动条的窗体句柄,由fnBar参数决定。fnBar:指定被设定参数的滚动条的类型。这个参数可以是下面值,含义如下:SB_CTL:设置滚动条控件。而参数hwnd必须是滚动条控件的句柄。SB_HORZ:设置所给定的窗体上标准水平滚动条参数。SB_VERT:设置所给定的窗体上标准垂直滚动条参数。lpsi:指向SCROLLINFO结构。在调用SetScrollInfo之前,设置SCROLLINFO结构中cbSize成员以标识结构大小,设置成员fMask

5、以说明待设置的滚动条参数,并且在适当的成员中制定新的参数值。成员fMask可以为下面所列复合值,含义如下:SIF_DfSABLENOSCROLL:如果滚动条的新参数使其为没必要,则使滚动条无效而不再移动它。SIF_PAGE:设置滚动页码值到由Ipsi指向的SCROLLINFO结构的nPage成员中。SIF_POS:设置滚动位置值到由lpsi指向的SCROLLINFO结构的nPos成员中。SIF_RANGE:设置滚动范围值到由lpsl指向的SCROLLINFO结构的nMin和nMax成员中。fRedraw:指定滚动条是否重画以反映滚动条的变化。如果这个参数为TRUE,滚动条将被重画,否则不

6、被重画。返回值:返回值是滑块的当前位置。1、编辑框中的滚动条设计;单行编辑框控件无滚动条,多行编辑框控件才有滚动条。1)Edit1属性:名称属性说明MultilineTrue多行编辑框HorizontalScrollTrueVerticalScrollTrueAutoHScrollTrueAutoVScrollTrue2)多行编辑框类的方法:设置好后多行编辑框控件自动管理滚动条。列表框中的滚动条设计;1)垂直滚动条设计只需设置属性即可:名称属性说明VerticalScrollTrue2)水平滚动条设计注意:需要将水平滚动条的属性设为真,否则即使调用下面的函数也不会出现水平滚动条。名称属性

7、说明HorizontalScrollTrue通过调用SendDlgItemMessage向对话框发送设置水平滚动条宽度信息来显示水平滚动条。函数SendDlgItemMessage(IDC_LIST2,LB_SETHORIZONTALEXTENT,(WPARAM)s.cx,0);函数原型:LRESULTSendDlgItemMessage(intnID,UINTmessage,WPARAMwParam=0,LPARAMlParam=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。