《2022年2022年简单文件管理系统 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年简单文件管理系统 .pdf(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、华东交通大学课程设计报告1 目录一、题目和要求. 2二、相关原理分析和总的设计思想 . 2三、数据结构和流程图 . 4四、源程序 . 6五、运行结果 . 18六、自我评析与总结. 24名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告2 一、题目和要求(1) 题目:简单文件管理系统的设计及实现(2) 要求:根据文件系统的相关原理,设计并用C或 C+ 编程实现一个类似Windows系统中“我的电脑”功能的文
2、件管理系统,该文件系统可以对系统中所有文件进行管理,同时具有创建新文件(为简单起见, 可以固定几种类型的文件) 、删除文件、复制文件、创建文件夹等功能。二、相关原理分析和总的设计思想基于 MFC AppWizard框架的程序定制一个菜单,有添加四个子菜单,创建,复制,删除,退出, 在前三个子菜单中添加四个菜单项, 文件夹, TXT , WORD, EXCEL 。每个菜单项对应着一种功能。且复制选择路径都是基于对话框,操作方便,简洁明了。1 创建文件夹;要创建文件夹,首先要选择文件夹创建的位置,可以用到浏览文件夹的函数SHBrowseForFolder 和两个结构 BROWSEINFO和ITEM
3、IDLIST,要 SHGetPathFromIDList 得到文件夹路径可以用,当然要程序要想拥有建立文件夹的功能,应该设置BROWSEINFO对象的 ulFlags 的参数有 BIF_NEWDIALOGSTYLE ; 2 创建文件;不管是创建 txt文件, word 文件, excel 文件原理都一样。可以写一个 build 函数, 提供几个参数:标题 title, 路径 filter,扩展名 defExt 。这样创建文件时,可以根据标题,路径,扩展名的不同调用 build函数,达到不同功能的目的在 build函数体中使用 CFileDialog定义一个对象来创建文件。3 复制文件夹;第一步
4、:复制文件夹可以在一个对话框中完成,这样必然需要添加一个类 CCopyDlg 。第二步:在该对话框上设置两个按钮,一个按钮来选择源文名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告3 件夹,保存源文件路径;一个按钮来选择目标文件夹,保存目标文件路径。选择路径的方法可以与步骤1 的方法相同。第三步:重写确定消息应用程序来实现从一个目录复制到另一个目录的功能( copyFiles )。下面是 copyFil
5、es函数的实现原理:首先打开指定的文件夹进行搜索,再利用一个while循环,从当前目录搜索文件, 判断搜索到的是不是 . 和.目录,如果是文件夹的话,进行递归;如果是文件,进行复制。4 复制文件;复制文件跟复制文件夹一样也需要创建一个对话框,添加一个类。同理也在对话框上添加两个按钮,分别接收源路径,和目标路径。不过接收的方法需要通过CFileDialog选择对话框,而不能再和1 一样啦。复制文件, vc 中有已有的函数 CopyFile 。参数是两个复制的路径。5 删除文件夹在删除文件夹之前,首先要删除文件夹下的所有文件,再删除文件夹。该功能的实现也是利用递归,先判断文件夹下是否有文件,若有,
6、则删除,没有则删除文件夹,返回。6 删除文件定义一个类CMyFileDialog继承 CFileDialog而来,重写OnInitDialog函数来设置对话框中按钮的文本。创建一个 CMyFileDialog对象,在删除文件对话框中,选择想要删除的文件,调用DeleteFile函数进行文件的删除。7 退出程序设置一个退出子菜单,发送一个WM_CLOSE消息,关闭程序退出。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 24 页 - - - - - - - - - 华东交通
7、大学课程设计报告4 三、数据结构和流程图该程序没有使用到复杂的数据结构,是基于MFC AppWizard应用程序。主流程图:开始选择子菜单创建复制删除退出选择菜单项文件夹TXTWORDEXCEL消息处理程序消息处理程序消息处理程序消息处理程序结束为使流程图简单些,将创建,复制,删除放一起,用“”字符连接起来,代表“或”的意思名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告5 选择文件夹路径的流程图:开始
8、UpdateData(TRUE)初始化结构bipidl = NULL结束Y!SHGetPathFromIDListNYUpdateData(FALSE)m_strPath = szDirN名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告6 四、源程序(1)定制一个菜单, 添加 5 个子菜单,并分别设置它们的Popup,包括:创建(true)、 复制(true)、 删除(true)、 帮助、 退出(fal
9、se)。在子菜单中添加它们的菜单项。如下所示:创建:文件夹, TXT,WORD,EXCEL 复制:文件夹, TXT,WORD,EXCEL 删除:文件夹, TXT,WORD,EXCEL 帮助:关于 DMS(&A). 退出(2)创建文件夹的消息处理程序void CMainFrame:OnBuildFolder() / 选择新建文件夹的路径UpdateData(TRUE); char szDirMAX_PATH; BROWSEINFO bi; ITEMIDLIST *pidl; bi.hwndOwner = this-m_hWnd; bi.pidlRoot = NULL; bi.pszDisplay
10、Name = LPWSTR(szDir); bi.lpszTitle = TEXT(新建文件夹 ); bi.ulFlags = BIF_EDITBOX | BIF_VALIDATE | BIF_NEWDIALOGSTYLE ; bi.lpfn = NULL; bi.lParam = 0; bi.iImage = 0; pidl = SHBrowseForFolder(&bi); if(pidl = NULL) return; if(!SHGetPathFromIDList(LPCITEMIDLIST(pidl), LPWSTR(szDir) return; else m_strPath = s
11、zDir; UpdateData(FALSE); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告7 (3)创建文件的函数void CMainFrame:build(CString title, CString filter, CString defExt) CFileDialog fileDlg(FALSE); fileDlg.m_ofn.lpstrTitle=title; fileDlg.m_ofn
12、.lpstrFilter=filter; fileDlg.m_ofn.lpstrDefExt=defExt; if(IDOK=fileDlg.DoModal() / 创建一个文档CFile file(fileDlg.GetFileName(),CFile:modeCreate); file.Close(); 创建 txt 文件:void CMainFrame:OnBuildTxt() / 创建一个 Txt 文档build(TEXT(新建 Txt 文档 ),TEXT(TextFiles(*.txt)0*.txt0), TEXT(txt); 创建 word 文档:void CMainFrame:O
13、nBuildWord() / 创建一个 Word 文档build(TEXT(新建 Word文档 ), TEXT(Text Files(*.doc)0*.doc0),TEXT(doc); 创建 excel 工作表:void CMainFrame:OnBuildExcel() / 创建一个 Excel 工作表build(TEXT(新建 Excel 工作表 ), TEXT(Text Files(*.xls)0*.xls0),TEXT(xls); 创建 txt 、word、excel 都是调用 build 函数。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
14、- - - - - - 名师精心整理 - - - - - - - 第 7 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告8 (4)复制文件夹添加一个类: CCopyDlg ;在对话框上添加两个按钮,“选择源文件夹”, “选择目标文件夹”;选择路径的函数:CString CCopyDlg:selectPath(CString path) / 选择路径UpdateData(TRUE); char szDirMAX_PATH; CString str; BROWSEINFO bi; ITEMIDLIST *pidl; bi.hwndOwner = this-m_hWn
15、d; bi.pidlRoot = NULL; bi.pszDisplayName = LPTSTR (szDir); bi.lpszTitle = path; bi.ulFlags = BIF_EDITBOX | BIF_VALIDATE; bi.lpfn = NULL; bi.lParam = 0; bi.iImage = 0; pidl = SHBrowseForFolder(&bi); if(pidl = NULL) return CString(); if(!SHGetPathFromIDList(pidl, LPTSTR (szDir) return CString(); else
16、str = szDir; UpdateData(FALSE); return str; 分别对这两个按钮进行响应:void CCopyDlg:OnBnClickedButton1() / 获得源文件夹的路径m_strBgnPath=selectPath(TEXT(选择源文件夹 ); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告9 void CCopyDlg:OnBnClickedButton2()
17、/ 获得目标文件夹的路径m_strEndPath=selectPath(TEXT(选择目标文件夹 ); 再添加一个复制函数:BOOL copyFiles(CString strSrcPath, CString strDstPath) / 创建目标文件夹 CreateDirectory(strDstPath,NULL); CFileFind finder; / 打开指定的文件夹进行搜索 BOOL bWorking = finder.FindFile(strSrcPath + TEXT(*.*); while(bWorking) / 从当前目录搜索文件 bWorking = finder.Find
18、NextFile(); CString strFileName = finder.GetFileName(); CString strSrc = strSrcPath + TEXT() + strFileName; CString strDst = strDstPath + TEXT() + strFileName; / 判断搜索到的是不是. 和.目录 if(!finder.IsDots() / 判断搜索到的目录是否是文件夹 if(finder.IsDirectory() / 如果是文件夹的话,进行递归 if(!copyFiles(strSrc, strDst) return false; e
19、lse / 如果是文件,进行复制 if(!CopyFile(strSrc, strDst, FALSE) return false; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告10 return true; 对确定按钮的消息响应函数重写:void CCopyDlg:OnBnClickedOk() copyFiles(m_strBgnPath,m_strEndPath); OnOK(); 最后对菜单
20、项:复制文件夹的响应:void CMainFrame:OnCopyFolder() / 弹出一个复制文件夹的对话框CCopyDlg dlg;010 dlg.DoModal(); (5)复制 txt 文件添加一个类: CTxtDlg;先对两个按钮, 选择源 Txt 文件 选择目的 Txt 文件 进行响应:void CTxtDlg:OnBnClickedButton1() CFileDialog dlg(1,NULL,NULL,NULL,TEXT(Text files(*.txt)|*.txt); dlg.m_ofn.lpstrTitle=TEXT(选择源 Txt 文件 ); if(dlg.DoM
21、odal()=IDOK) m_strBgnPath = dlg.GetPathName(); void CTxtDlg:OnBnClickedButton2() CFileDialog fileDlg(FALSE); fileDlg.m_ofn.lpstrTitle=TEXT(选择目的 Txt 文件 ); fileDlg.m_ofn.lpstrFilter=TEXT(Text Files(*.txt)0*.txt0); fileDlg.m_ofn.lpstrDefExt=TEXT(txt); if(IDOK=fileDlg.DoModal() 名师资料总结 - - -精品资料欢迎下载 - -
22、- - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告11 m_strEndPath=fileDlg.GetFileName(); 再对“确定”按钮进行响应:void CTxtDlg:OnBnClickedOk() BOOL tempFile = CopyFile(m_strBgnPath,m_strEndPath,FALSE); int itemp = GetLastError(); if(!tempFile) MessageBox( TEXT( 文件复
23、制失败 ) ); else MessageBox( TEXT( 文件复制成功 ) ); OnOK(); 最后对菜单项:复制txt文件的响应:void CMainFrame:OnCopyTxt() / 弹出一个复制 Txt 文件的对话框CTxtDlg dlg; dlg.DoModal(); (6)复制 word文档添加一个类: CWordDlg ;对两个按钮,选择源 Word文档 选择目的 Word文档 进行响应:void CWordDlg:OnBnClickedButton1() CFileDialog dlg(1,NULL,NULL,NULL,TEXT(Text files(*.doc)|*
24、.doc); dlg.m_ofn.lpstrTitle=TEXT(选择源 Word文档 ); if(dlg.DoModal()=IDOK) m_strBgnPath = dlg.GetPathName(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告12 void CWordDlg:OnBnClickedButton2() CFileDialog fileDlg(FALSE); fileDlg.
25、m_ofn.lpstrTitle=TEXT(选择目的 Word文档 ); fileDlg.m_ofn.lpstrFilter=TEXT(Text Files(*.doc)0*.doc0); fileDlg.m_ofn.lpstrDefExt=TEXT(doc); if(IDOK=fileDlg.DoModal() m_strEndPath=fileDlg.GetFileName(); 再对“确定”按钮进行响应:void CWordDlg:OnBnClickedOk() BOOL tempFile = CopyFile(m_strBgnPath,m_strEndPath,FALSE); int
26、itemp = GetLastError(); if(!tempFile) MessageBox( TEXT( 文件复制失败 ) ); else MessageBox( TEXT( 文件复制成功 ) ); OnOK(); 最后对菜单项:复制word 文档的响应:void CMainFrame:OnCopyWord() / 弹出一个复制 Word 文件的对话框CWordDlg dlg; dlg.DoModal(); (7)复制 excel 工作表名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -
27、- 第 12 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告13 添加一个类: CExcelDlg;对两个按钮进行响应:void CExcelDlg:OnBnClickedButton3() CFileDialog dlg(1,NULL,NULL,NULL,TEXT(Text files(*.xls)|*.xls); dlg.m_ofn.lpstrTitle=TEXT(选择源 Excel 工作表 ); if(dlg.DoModal()=IDOK) m_strBgnPath = dlg.GetPathName(); void CExcelDlg:OnBnClick
28、edButton2() CFileDialog fileDlg(FALSE); fileDlg.m_ofn.lpstrTitle=TEXT(选择目的 Excel 工作表 ); fileDlg.m_ofn.lpstrFilter=TEXT(Text Files(*.xls)0*.xls0); fileDlg.m_ofn.lpstrDefExt=TEXT(xls); if(IDOK=fileDlg.DoModal() m_strEndPath=fileDlg.GetFileName(); 再对确定按钮进行响应:void CExcelDlg:OnBnClickedOk() BOOL tempFile
29、 = CopyFile(m_strBgnPath,m_strEndPath,FALSE); int itemp = GetLastError(); if(!tempFile) MessageBox( TEXT( 文件复制失败 ) ); else MessageBox( TEXT( 文件复制成功 ) ); OnOK(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告14 最后对菜单项:复制excel
30、 工作表的响应:void CMainFrame:OnCopyExcel() / 弹出一个复制 Excel 文件的对话框CExcelDlg dlg; dlg.DoModal(); (8)删除文件夹的消息处理程序/ 删除非空目录 function如下:BOOL DeleteDirectory(char *DirName) CFileFind tempFind; char tempFileFind200; sprintf_s(tempFileFind,%s*.*,DirName); BOOL IsFinded=(BOOL)tempFind.FindFile(LPCTSTR(tempFileFind)
31、; while(IsFinded) IsFinded=(BOOL)tempFind.FindNextFile(); if(!tempFind.IsDots() char foundFileName200; strcpy_s(foundFileName,(char*)tempFind.GetFileName().GetBuffer(200); if(tempFind.IsDirectory() char tempDir200; sprintf_s(tempDir,%s%s,DirName,foundFileName); DeleteDirectory(tempDir); else char te
32、mpFileName200; sprintf_s(tempFileName,%s%s,DirName,foundFileName); DeleteFileA(tempFileName); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告15 tempFind.Close(); if(!RemoveDirectoryA(DirName) MessageBoxA(0,删除目录失败!, 警告信息 ,MB_O
33、K); return FALSE; return TRUE; / 删除文件夹void CMainFrame:OnDeleteFolder() / 选择要删除文件夹的路径UpdateData(TRUE); char szDirMAX_PATH; BROWSEINFO bi; ITEMIDLIST *pidl; bi.hwndOwner = this-m_hWnd; bi.pidlRoot = NULL; bi.pszDisplayName = LPWSTR(szDir); bi.lpszTitle = TEXT(删除文件夹 ); bi.ulFlags = BIF_EDITBOX | BIF_VA
34、LIDATE; bi.lpfn = NULL; bi.lParam = 0; bi.iImage = 0; pidl = SHBrowseForFolder(&bi); if(pidl = NULL) return; if(!SHGetPathFromIDList(pidl, LPWSTR(szDir) return; else strcpy_s(path , szDir); UpdateData(FALSE); DeleteDirectory(path); MessageBox(TEXT(删除文件夹成功 ); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -
35、- - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告16 (9)增加一个 CMyFileDialog 类它是继承 CFileDialog类而来,重写它的OnInitDialog函数:BOOL CMyFileDialog:OnInitDialog(void) / 设置对话框上按钮的文本SetControlText(IDOK,删除 ); return 0; (10)删除 txt 文件的消息处理程序void CMainFrame:OnDeleteTxt() CMyFileDialog dlg
36、(1,NULL,NULL,NULL,TEXT(Text files(*.txt)|*.txt); dlg.m_ofn.lpstrTitle=TEXT(选择要删除的 Txt 文件 ); if(dlg.DoModal()=IDOK) m_strTxtPath = dlg.GetPathName(); DeleteFile(m_strTxtPath); (11)删除 word 文档的消息处理程序void CMainFrame:OnDeleteWord() CMyFileDialog dlg(1,NULL,NULL,NULL,TEXT(Text files(*.doc)|*.doc); dlg.m_o
37、fn.lpstrTitle=TEXT(选择要删除的 Word文档 ); if(dlg.DoModal()=IDOK) m_strTxtPath = dlg.GetPathName(); DeleteFile(m_strTxtPath); (12)删除 excel 工作表的消息处理程序void CMainFrame:OnDeleteExcel() CMyFileDialog dlg(1,NULL,NULL,NULL,TEXT(Text files(*.xls)|*.xls); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精
38、心整理 - - - - - - - 第 16 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告17 dlg.m_ofn.lpstrTitle=TEXT(选择要删除的 Excel 工作表 ); if(dlg.DoModal()=IDOK) m_strTxtPath = dlg.GetPathName(); DeleteFile(m_strTxtPath); (13) 退出的消息处理程序void CMainFrame:OnExit() / 发送一个退出程序的消息SendMessage(WM_CLOSE); (14) 修改窗口的标题在 PreCreateWindow函数
39、体中添加如下代码:/ CREATESTRUCT cs 来修改窗口类或样式cs.style &=FWS_ADDTOTITLE; cs.lpszName=TEXT( 简单文件管理系统); (15)隐藏工具栏将以前的工具栏隐藏,在OnCreate 函数体中添加如下代码:/ 隐藏原来的工具栏m_wndToolBar.ShowWindow(SW_HIDE); (源程序完毕)这个程序我是用 VC写的, 是基于 MFC AppWizard 框架的程序,由于使用了些新函数, 只适用于 vc2008 版本以上的编译器,vc6.0是不行的。名师资料总结 - - -精品资料欢迎下载 - - - - - - - -
40、- - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告18 五、运行结果程序的主界面:窗口的标题“简单文件管理系统”它有三个弹出式子菜单: “创建”“复制” “删除” ,它们都有四个菜单项:文件夹, TXT ,WORD,EXCEL 。最后一个子菜单:“退出”,是一个非弹出式的子菜单,有退出程序的消息响应函数。方便用户人性化退出。单击:退出。便可退出程序名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
41、 - - - - - - 第 18 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告19 (1)创建文件夹单击“创建” -“文件夹”将弹出如下所示的对话框:选择好路径,单击“新建文件夹”就可以在其目录下创建一个新的文件夹。(2)创建文件不管是创建 txt文件, word 文件,还是 excel 文件,原理都是一样的,操作步骤也是相近的,下面以txt格式为例,演示一下。首先单击子菜单“创建” ,选择“ TXT ”菜单项。将弹出如下所示的对话框,你可以在对话框中选择路径,在文件名的文本编辑框中输入你要保存的文件名。因为要创建的是txt文件,所以保存类型默认的后缀名为“
42、.txt ” 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告20 (3)复制文件夹操作步骤: “复制” -“文件夹”将弹出如下所示的对话框:单击按钮“选择源文件夹” ,是要你选择要复制哪个文件夹,名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 24 页 - - - - -
43、- - - - 华东交通大学课程设计报告21 将弹出选择框,如下所示:单击按钮“选择目标文件夹” ,是要你选择要复制到哪个文件夹下,将弹出选择框,如下所示:最后单击对话框中的“确定”按钮,这样就把指定的文件夹复制到了指定的目录下。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告22 (4)复制 txt文件,word 文件,excel 文件都跟复制文件夹的类似,这就不再重复操作,演示。(5)删除文件夹单
44、击“删除” -“文件夹”选择好要删除的文件夹,单击确定就可以删除文件夹了(6)删除文件Txt , word, excel 等文件删除的方式都一样, 下面以删除 word文件为例,演示一下。“删除” -“WORD” ,将弹出如下所示的删除文件对话框,选择要删除的 word 文档,单击删除按钮,就可以成功删除啦。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告23 (程序操作演示完毕)名师资料总结 - -
45、 -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共 24 页 - - - - - - - - - 华东交通大学课程设计报告24 六、自我评析与总结(1)做得比较好的地方:1 条理清晰。我写这个程序有非常清晰的思路,根据文件管理系统的功能,有创建,复制,删除等。每种功能对应着一个子菜单。每个子菜单对应着一个消息处理程序。2 用户操作方便由于本程序的操作都是基于菜单或者对话框的,用户一目了解,能迅速掌握操作方法。3 界面整洁美观不管是选择对话框也好,直接点击菜单进行响应也好,整个界面都有比较美观,
46、直接。(2)有待提高:自己学 API 函数一年,能力上还有些不足。(3)收获:复习了不少 API 函数,自己运用MFC AppWizard更熟练啦。(4)自我打分:我知道老师现在都很看重点名,我比较懒散,我上机没去。这对课设成绩肯定有影响。现在老师越来越不看重能力,看重的是老实,尊纪。作为学生的我,我也是相当无奈啊,老师。机房没有vc2008,我无法在实验室写这个程序。班上最多不会有超过5 个人会自己写程序,这点老师也知道,我的整个课设,全是自己写的,没有抄一个字。不管老师打什么,我都要给我自己打一个优秀!名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 24 页,共 24 页 - - - - - - - - -