进度指示器解析.docx

进度指示器解析.docx

ID:62715348

大小:79.80 KB

页数:11页

时间:2021-05-17

进度指示器解析.docx_第1页
进度指示器解析.docx_第2页
进度指示器解析.docx_第3页
进度指示器解析.docx_第4页
进度指示器解析.docx_第5页
资源描述:

《进度指示器解析.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、志油又厚实验报告课程名称软件案例分析实验名称进度指示器制作班级学号姓名成绩指导教师进度指示器制作1.实验目的(1)理解自定义进度指示器的设计原理。(2)理解进度百分比反色显示实现原理。(3)了解CWnd::OnCtlColor函数功能和使用方法。(4)熟练掌握定时器的使用方法。(5)掌握动态控件的创建和使用方法。(6)掌握嵌入子对话框的实现方法。2.开发环境(1)使用C++语言实现,使用VC++6.0集成开发环境开发(2)使用MFCS用程序开发框架3.实验要求(1)进度条未完成进度为白底红(或其他颜色)字

2、。(2)进度条已完成进度为红(或其他颜色)底白字。(3)进度具有加速、减速、停止功能,如图A.6所示。图A.6进度指示器4.实验步骤(1)启动VC++6.0,创建基于对话框的MFCAppWizard(exe)类型的工程,命名为ProgSelf,生成的主对话框类为CProgSelfDlg。(2)修改对话框ID为"IDD_PROGSELF_DIALOG标题为“进度指示器”。在主对话框中添加5个按钮控件(其中“退出”按钮的ID为IDOKQ,两个静态文本控件,一个编辑框控件IDC_RATEffi一个图片控件IDC

3、_PIC,对话框界面设计如图A.7所示图A.7主对话框界面(3)打开MFCClassWizard对话框,为“开始”、“加速”、“减速”、“停止”这四个按钮控件添加相应的消息映射成员函数。(4)向工程中添加子对话框资源,修改ID为"IDD_PROGESS样式设置为“下层”,边框设置为“无:其他属性设置如图A.8而示。双击孩子对话框,生成相应的类为CProgBar。二进度条图A.8子对话框界面(5)在Resource.h文件中为4个动态编辑框控件定义ID,代码如下:#defineIDC_BOT106#defi

4、neIDC_BOTTEXT101#defineIDC_UP107#defineIDC_UPTEXT103(6)在ProgBar.h文件中为4个动态编辑框控件定义CEdit对象指针和CRect对象,以及用于进度条更新和进度值显示控件的变量。代码如下:public:intspeed;//进度条更新速度private:boolfirstText;//boolfirstEdit;//CStringm_sUp;//CStringm_sBot;//CRectrectUpText;//CEdit*pEditUpText

5、;//CRectrectUp;CEdit*pEditUp;//CRectrectBotText;CEdit*pEditBotText;//CRectrectBot;CEdit*pEditBot;//floatstep;//floatpercent;//booltimerOn;//上层文本开关标志上层背景开关标志上层进度值底层进度值上层文本矩形上层文本编辑框上层背景编辑框下层文本编辑框下层背景编辑框上层文本编辑框宽度进度百分比定时器开关标志(7)在CProgBar类构造函数中进行成员变量的初始化。代码如下:

6、speed=1;step=0;percent=0;m_sBot="";m_sUp="";pEditBot=NULL;pEditBotText=NULL;;pEditUp=NULL;pEditUpText=NULL;timerOn=false;firstEdit=true;firstText=true;(8)为类CProgBar添加成员函数CreateBotEdit实现底层编辑框的初始化。代码如下,其中TEXTWIDTHb文本框宽度,设置为30。voidCProgBar二CreateBotEdit(intp

7、icwid){rectBot.SetRect(25,65,picwid-15,81);//下层编辑框pEditBot=newCEdit();pEditBot->Create(ES_CENTER,rectBot,this,IDC_BOT);pEditBot->ShowWindow(TRUE);//显示下层编辑框中的文本rectBotText.SetRect(rectBot.TopLeft().x+rectBot.Width()/2-TEXTWIDTH,rectBot.TopLeft().y,rectBot.

8、TopLeft().x+rectBot.Width()/2+TEXTWIDTH,rectBot.BottomRight().y);pEditBotText=newCEdit();pEditBotText->Create(ES_LEFT,rectBotText,this,IDC_BOTTEXT);pEditBotText->ShowWindow(TRUE);m_sBot.Format("%.1f%%”,percent);pEdi

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

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

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