文档详情

简易电子表格地设计.doc

发布:2018-07-06约1.13万字共15页下载文档
文本预览下载声明
实验一 简易电子表格的设计 TOC \o 1-4 \h \z \u HYPERLINK \l _Toc294710764 实验一 简易电子表格的设计 PAGEREF _Toc294710764 \h 1 HYPERLINK \l _Toc294710765 1.问题描述 PAGEREF _Toc294710765 \h 1 HYPERLINK \l _Toc294710766 2.基本要求 PAGEREF _Toc294710766 \h 1 HYPERLINK \l _Toc294710767 3.实现提示 PAGEREF _Toc294710767 \h 2 HYPERLINK \l _Toc294710768 4.实验过程 PAGEREF _Toc294710768 \h 3 HYPERLINK \l _Toc294710769 4.1基本算法及分析 PAGEREF _Toc294710769 \h 3 HYPERLINK \l _Toc294710770 4.2程序代码 PAGEREF _Toc294710770 \h 7 HYPERLINK \l _Toc294710771 5.实验结果 PAGEREF _Toc294710771 \h 13 HYPERLINK \l _Toc294710772 6.实验总结 PAGEREF _Toc294710772 \h 14 HYPERLINK \l _Toc294710773 7.参考文献 PAGEREF _Toc294710773 \h 151.问题描述 设计一个支持基本计算统计功能和其它一些表格管理/处理功能的软件,使用户可在该软件的支持下,用交互方式进行表格建立、数据输入、数据编辑及其它一些表格操作。即类似于简易Execel表格处理软件。2.基本要求 (1)建立表格:建立空白表格,同时在屏幕上显示,使其处于可输入数据的状态。用户可指定新建表格的行列数。 (2)输入数据与编辑数据:通过键盘将数据输入到显示在屏幕上的电子表格上。 (3)基本统计计算:可选择按行或列合计、求平均、求最大最小。 (4)排序:使任意指定的行或列中的数据按大小(升或降)排列,对字符型数据,还可选择大小写敏感。 (5)表格保存:使电子表格以磁盘文件的方式存储在磁盘上,并可随时读入, 供继续处理。 *(6)公式支持:单元格内可输入公式(表达式),使对应单元格的最终内容为公式的计算结果。公式最基本的形式是算术计算公式,可按名引用其它单元格。 *该功能可选做。3.实现提示该题目需要使表格成为可编辑状态,此部分要求较高,可在网上或图书馆查找相关资料。提示:MSFlexGrid 控件的函数的长度单位是“缇(twips)”,需要将其转化为像素,1440 缇 = 1 英寸4.实验过程4.1基本算法及分析首先,定义绘制可视化表格的一些函数,部分函数名如下:CMainFrame::OnCreate( )CString COleFont::GetName( )COleFont::SetName( )CY COleFont::GetSize( )COleFont::SetSize( )COleFont::SetBold( )COleFont::SetItalic( )COleFont::SetUnderline( )CPicture::GetHandle( )CPicture::GetHPal( )CPicture::SetHPal( )CPicture::GetType( )利用这些函数将可视化表格绘制出来。第二,定义函数CChild::OnClickMsflexgrid1( )将可视化表格打印出来。同时利用两个for循环,在行和列上分别将A~Z,“和”“最大值”“最小值”“平均值”“行排序”“列排序”“读取”“保存”等字符串显示出来。第三,使表格成为可编辑状态。通过if(lRowm_FlexGrid.GetRows() || lRow==0)判断点击是否有效。若有效,则获取FlexGrid控件的窗口矩形并将其转换为客户区矩形,以像素为单位计算选中格的左上角的坐标和选中格的尺寸,形成选中个所在的矩形区域并转换成相对对话框的坐标。然后获取单元格内容,改变大小并移到选中格位置,显示文本。第四,求和。定义函数CChild::OnButton1()。先判断是行还是列需要求和,在将所在行(或列)的所有数加起来得到sum并显示。为方便存取,利用可以将字符转换成浮点数的函数atof和可以将浮点数转换成字符的函数gcvt把获取到的单元格内容来回转换。第五
显示全部
相似文档