MFC-时钟.docx

上传人:scccc 文档编号:12059406 上传时间:2021-12-01 格式:DOCX 页数:8 大小:349KB
返回 下载 相关 举报
MFC-时钟.docx_第1页
第1页 / 共8页
MFC-时钟.docx_第2页
第2页 / 共8页
MFC-时钟.docx_第3页
第3页 / 共8页
MFC-时钟.docx_第4页
第4页 / 共8页
MFC-时钟.docx_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《MFC-时钟.docx》由会员分享,可在线阅读,更多相关《MFC-时钟.docx(8页珍藏版)》请在三一文库上搜索。

1、WINDOWS程序设计实验一报告GDI对象使用设计内容、方法与难点:本课题设计的内容包括了时钟的显示、定时器的应用。新建一个对话框,在对话框内进行数据绘制,并设计定时器,在定时器中进行时钟行走的绘图刷新。点击开始按钮,进行图像绘制;再次点击开始/暂停按钮,绘制暂停课题难点一:如何对表盘上的,时针、分针、秒针进行处理解决方案:抽象出一个指针类,时针、分针、秒针对指针类进行实例化,拥有相同的属性和方法,便于管理课题难点二:绘制数据,如何在对话框面板上进行图像绘制,文字输出。解决方案在MainFrame 类中 创建 绘图函数,函数的设置一个CDC *pDC参数,图像和文本的显示,在 pDC 进行绘制

2、和显示。课题难点三:图像刷新时的闪烁问题解决方案在响应OnTimer事件时,每次绘图只是进行指针的重绘和时间显示的重绘,表盘和其他控件不进行重新绘制,减少每次绘图的资源作品特色本作品的特点是有:界面美观,在色彩的选择上参考了win7时钟的风格。二是无闪烁。设置有开始和停止按钮,可以实时控制时钟的运行。推荐精选项目类设计:(要求有类图和类功能、成员函数和成员变量的文字介绍)时钟类:成员变量 CNeedle *m_HourNeedle; /时针 CNeedle *m_MinuteNeedle; /分针 CNeedle *m_SecondNeedle; /秒针 CPen m_CirclePen; /

3、外部圆的画笔 CPen m_KeyPointPen; /关键点的画笔 CPen m_PointPen; /其他点的画笔 成员函数推荐精选void DrawCircle(CDC *pDC,int x1,int y1,int x2,int y2); void Draw(CDC *pDC,int nMoveToX,int nMoveToY,int nDrawX,int nDrawY,CString num); /绘制时钟上面的各个点 void CreatePen(int index,int nPenStyle,int nWidth,COLORREF color); /创建画笔 CPen *GetCi

4、rclePen(); /获得圆圈的画笔CPen *GetKeyPointPen(); /获得关键点的画笔 CPen *GetPointPen(); /获得其他点的画笔 CNeedle *GetHourNeedle(); /获取时针 CNeedle *GetMinuteNeedle(); /获取分针 CNeedle *GetSecondNeedle(); /获取秒针 指针类:成员变量CPen m_Pen; 成员函数void CreatePen(int nPenStyle,int nWidth,COLORREF color); void Draw(CDC *pDC,int moveToX,int

5、moveToY,int drawX,int drawY); /绘制自己 CPen *GetPen(); /获取画笔面板类:成员变量bool m_Start; /控制菜单项的标识 CClock *m_Clock; /时钟 CTime m_CurrentTime; /当前系统时间 推荐精选int m_Hour; /当前的时 int m_Minute; /当前的分 int m_Second; /当前的秒成员函数void PrintText(CDC *pDc,int quarterWidth,int threeQuartersWidth,int quarterHeight,int threeQuart

6、ersHeight,int midWidth,int midHeight); /输出Title以及时钟的文字 void DrawClock(CDC *pDc,int quarterWidth,int threeQuartersWidth,int quarterHeight,int threeQuartersHeight,int midWidth,int midHeight); /绘制时钟的图形 void DrawCalendar(CDC *pDc,CRect rect); /绘制日历的所有内容void Init(); /初始化数据 推荐精选重点函数简介 (要求函数必须有注释和说明)设置定时器绘制时钟推荐精选绘制当前日历推荐精选显示标题、时间运行结果程序运行界面如下。界面显示信息清楚,内容包括:时钟、日历推荐精选有待解决的问题1. 无鼠标事件 2. 不接受时间的输入3.4.5. 6. (注:可编辑下载,若有不当之处,请指正,谢谢!)7.8.9. 10. 11.12.推荐精选

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1