ImageVerifierCode 换一换
格式:DOC , 页数:23 ,大小:708.50KB ,
资源ID:974084      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-974084.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(彩电故障信息共享系统.DOC)为本站会员(国***)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

彩电故障信息共享系统.DOC

1、彩电故障信息共享系统丁佑光(厦门大学应用电子技术专业 2000 级 厦门 福建 361005)摘要本文介绍了如何使用 Visual C+.0 编程制作信息共享系统,实现信息管理共享的自动化。由此实现了信息的增加、删除、修改、查看等功能,并且进而实现信息的安全管理,使信息的管理更加人性化,规范化。从而提高故障排除效率,提高信息利用率,有助于进一步提高了生产效率。AbstractThe main work of this paper is introduce how to use Visual C+.0 programming a Color TV Malfunction-Information

2、In-Common System, achieve the auto-manage of the Malfunction-Information. According these, this system achieves the informations function of add、delete 、edit and view., it also get the information managed safety, so the management of the information will be more humanity 为了能使系统在各个环境下都可正常运行,需要修改此函数,使

3、数据库实现动态链接,修改后的函数程序如下:CString CDataSet:GetDefaultDBName()char path50;CString m_strDatabaseName;:GetCurrentDirectory(50,path); /得到当前应用程序所在的路径strcat(path,“);m_strDatabaseName=_T(path);m_strDatabaseName+=“info1.mdb“; /将所对应文件改成所要的数据库名return m_strDatabaseName; /返回数据库所在的完整路径同样的,我们也必须修改 CLoginSet:GetDefault

4、DBName()函数。因为其内部程序与CDataSet:GetDefaultDBName()相同,所以我们就不再此列出。五 功能模块的创建在链接了数据库后,接下来我们就可以开始进行各功能模块的创建。a) 系统主体窗体的创建在我们按照 VC+的 AppWizard 创建完工程后,为了使主窗口框架更适合整个系统的操作,我们有必要进行修改,重新创建。(1) 主菜单的创建在 WorkSpase 中选择 ResourseView,然后双击 Menu 文件夹,再双击IDR_MAINFRAME 选项,单击右边窗口中 “帮助”旁边的虚线框,在双击或按回车键,就会出现“Menu Item Properties”

5、对话框,在这个对话框中输入菜单项的内容,如图 8 所示。图 8 设置一级菜单二级菜单的设置基本上都和图 8 相同,只是必须设置 ID。按照这种方法,最终创建出如表 2 所示的菜单结构。菜单名称 ID文件.打印 ID_FILE_PRINT.打印预览 ID_FILE_PRINT_PREVIEW.打印设置 ID_FILE_PRINT_SETUP.最近文件 ID_FILE_MRU_FILE1.退出 ID_APP_EXIT查看.工具栏 ID_VIEW_TOOLBAR.状态栏 ID_VIEW_STATUS_BAR信息管理.查询记录 ID_RECORD_SEARCH.添加记录 ID_RECORD_ADD.查

6、看记录 ID_RECORD_VIEW.删除记录 ID_RECORD_DEL.更改记录 ID_RECORD_EDIT权限管理.添加用户 ID_USER_ADD.更改密码 ID_PASSWARD_EDIT.删除用户 ID_USER_DEL帮助.关于 xiahua 1.0 ID_APP_ABOUT表 2 菜单结构(2) 右键菜单的创建为了实现操作的方便、快捷,我们在程序中加入了右键菜单。在 VC 的主菜单中,按“Project”“New Project”“Components and Controls Gallery”即可进入“Components and Controls Gallery”对话框,

7、然后再打开 Visual C+ Components 文件,再选择“Pop-up Menu”,单击“insert” ,随后在跳出的对话框中选择“CxiahuaView” ,最后单击“OK” 。完成后,需要对其进行编辑。单击 WorkSpase 中的 ResourseView,在 Menu文件夹中选择 CG_IDR_POPUP_MAIN_FRAME,之后边可在右边窗口对其进行编辑。编辑方法与主菜单相同,其中各项的 ID 分别对应相应的菜单项,对应关系如表 3 所示。菜单名称 ID查看记录 ID_RECORD_VIEW添加记录 ID_RECORD_ADD删除记录 ID_RECORD_DEL更改记录

8、 ID_RECORD_EDIT表 3 右键菜单对应的菜单项 ID(3) 工具栏的创建在 WorkSpase 中选择 ResourseView,然后双击 Toolbar 文件夹,再双击IDR_MAINFRAM 选项,就可以利用工具条编辑器(Toolbar Editor)编辑右边的工具条。本系统创建的工具条如图 9 所示。其中各按钮的 ID 分别对应相应的菜单项,按从做到右的顺序对应的菜单项 ID 如表 4 所示。次序 ID1 ID_FILE_PRINT2 ID_RECORD_ADD3 ID_RECORD_DEL4 ID_RECORD_SEARCH5 ID_RECORD_ALL6 ID_APP_A

9、BOUT表 4 工具条对应的菜单项 ID(注:其中第 5 个是显示全部数据,实现刷新功能,在菜单中没有)(4) 数据显示与表格控件的创建因为 CxiahuaView 是从 ClistView 继承的,所以创建完工程后,就已经有表格控件存在。而我们目的就是使控件上的显示更符合系统的使用,所以我们有必要对初试界面也就是对 CXiahuaView:OnInitialUpdate()函数进行修改,修改后的函数如下:void CXiahuaView:OnInitialUpdate()CListView:OnInitialUpdate();/ TODO: You may populate your Lis

10、tView with items by directly accessingCListCtrl ctl.ModifyStyle(0,LVS_REPORT|LVS_SINGLESEL);ctl.SetExtendedStyle(LVS_EX_FLATSB|LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);/设置窗体类型/初始化 m_pSet 指针,m_pSet 原型为 CDataSet* m_pSetm_pSet=/初始化 m_pLset 指针, m_pLset 原型为 CLoginSet* m_pLsetm_pLset= if(m_pSet-IsOpen()m_pS

11、et-Close();m_pSet-Open(); /打开数据库GetDocument()-SetTitle(“彩电故障信息共享系统“); /设置标题CString str;/以下是设置控件按钮显示字符str.LoadString(IDS_SERIAL);ctl.InsertColumn(0,str);ctl.InsertColumn(1,“显象管“);ctl.InsertColumn(2,“机芯“);ctl.InsertColumn(3,“机壳“);ctl.InsertColumn(4,“器件“);ctl.InsertColumn(5,“技术员“);ctl.InsertColumn(6,“时

12、间“);ctl.InsertColumn(7,“其他“);ctl.InsertColumn(8,“信息名“);ctl.InsertColumn(9,“具体内容“);m_bIsAsc=TRUE;m_bIsShowAll=TRUE;ShowTableData(); /调用显示数据函数,显示数据接下来就是要编写 ShowTableData()函数。程序如下:void CXiahuaView:ShowTableData()CListCtrl ctl.DeleteAllItems(); /删除所有已显示内容m_pSet-MoveFirst(); /将 m_pSet 指针指向首条记录int i=0;int

13、 ColWidth10=0;while(!m_pSet-IsEOF() /如果没有到达数据末尾,则显示数据LV_ITEM lvItem;lvItem.mask = LVIF_TEXT;lvItem.iItem = i;lvItem.iSubItem=0;CString str;str.Format(“%d“,i+1); /序号列lvItem.pszText=(LPTSTR)(LPCTSTR)str;if(ctl.GetStringWidth(lvItem.pszText)ColWidth0)ColWidth0=ctl.GetStringWidth(lvItem.pszText);ctl.Ins

14、ertItem(/以下显示各条内容lvItem.iSubItem = 1; lvItem.pszText=(LPTSTR)(LPCTSTR)(m_pSet-m_crt);if(ctl.GetStringWidth(lvItem.pszText)ColWidth1)ColWidth1=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(lvItem.iSubItem=2;lvItem.pszText=(LPTSTR)(LPCTSTR)(m_pSet-m_clips);if(ctl.GetStringWidth(lvItem.pszText)ColWidt

15、h2)ColWidth2=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(lvItem.iSubItem=3;lvItem.pszText=(LPTSTR)(LPCTSTR)(m_pSet-m_case);if(ctl.GetStringWidth(lvItem.pszText)ColWidth3)ColWidth3=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(lvItem.iSubItem=4;lvItem.pszText=(LPTSTR)(LPCTSTR)(m_pSet-m_device);if

16、(ctl.GetStringWidth(lvItem.pszText)ColWidth4)ColWidth4=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(lvItem.iSubItem=5;lvItem.pszText=(LPTSTR)(LPCTSTR)(m_pSet-m_workor);if(ctl.GetStringWidth(lvItem.pszText)ColWidth5)ColWidth5=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(lvItem.iSubItem=6;/CString

17、 stTmp =m_pSet-m_date.Format(“%Y-%m-%d“);/ %H:%M:%S/strcpy(lvItem.pszText,(LPSTR)(LPCSTR)stTmp);lvItem.pszText=(LPTSTR)(LPCTSTR)(m_pSet-m_date);if(ctl.GetStringWidth(lvItem.pszText)ColWidth6)ColWidth6=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(lvItem.iSubItem=7;lvItem.pszText=(LPTSTR)(LPCTSTR)(m

18、_pSet-m_other);if(ctl.GetStringWidth(lvItem.pszText)ColWidth7)ColWidth7=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(lvItem.iSubItem=8;lvItem.pszText=(LPTSTR)(LPCTSTR)(m_pSet-m_info);if(ctl.GetStringWidth(lvItem.pszText)ColWidth8)ColWidth8=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(lvItem.iSub

19、Item=9;lvItem.pszText=(LPTSTR)(LPCTSTR)(m_pSet-m_content);if(ctl.GetStringWidth(lvItem.pszText)ColWidth9)ColWidth9=ctl.GetStringWidth(lvItem.pszText);ctl.SetItem(i+;m_pSet-MoveNext(); /将 m_pSet 指针指向下条记录/设置各数据项的显示宽度for(int j=0;jMoveFirst(); /将 m_pSet 指针再指向首条记录,便于下次操作到此,我们完成了主体框架的制作,主窗口如图 9 所示。图 9 主窗口

20、b) 系统用户权限管理模块的创建为了数据库使用的安全,必须对数据库的各种操作实行权限管理。只有管理员允许的人员才有权力使用。允许的用户和密码都预先存在数据库中,本系统中为 login 表。权限管理模块主要实现如下功能: 添加用户 更改密码 删除用户 用户登录(权限验证)(1) 添加用户对话框的创建在 ResourseView 中,右击 Dialog,选择 Insert Dialog,便可在右边窗口中编辑对话框。完成的对话框如图 10 所示。对话框中各种非静态文本控件的属性见表 5。图 10 添加用户对话框 图 11 密码修改对话框控件 ID用户名 Edit Box IDC_USER密码 Edi

21、t Box IDC_PSWD确认密码 Edit Box IDC_COMPSWD表 5 添加用户对话框中各控件的属性设置对话框编辑完成后,双击该对话框,进入 New Class 对话框,取此登记对话框的类名为 CAddUser。然后在 MFC ClassWizard 中选择 Class name 为 CXiahuaView,Object IDs 为“ID_USER_ADD”,Messages 为“COMMAND” ,单击 Add Function 按钮,取系统默认的函数名,再单击 Edit Code 按钮,即可进入代码编辑器对函数 CXiahuaView:OnUserAdd()进行编辑。此函数代码如下:void CXiahuaView:OnUserAdd() / TODO: Add your command handler code hereCLoginSet *m_daorecordset=new CLoginSet(/初始化连接数据库指针

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。