04用VC制作一个工资管理系统方案

上传人:彩*** 文档编号:97181646 上传时间:2022-05-27 格式:DOCX 页数:45 大小:608.67KB
收藏 版权申诉 举报 下载
04用VC制作一个工资管理系统方案_第1页
第1页 / 共45页
04用VC制作一个工资管理系统方案_第2页
第2页 / 共45页
04用VC制作一个工资管理系统方案_第3页
第3页 / 共45页
资源描述:

《04用VC制作一个工资管理系统方案》由会员分享,可在线阅读,更多相关《04用VC制作一个工资管理系统方案(45页珍藏版)》请在装配图网上搜索。

1、案例四用 VC+制作一个工资管理系统关键词: VC+数据库数据表控件绑定统计计算4.1课程设计的目的和意义工资管理是任何企事业单位都需要进行的一项工作,因此,开发制作工资管理系统具有较大的社会现实意义, 同时工资管理系统的最大特征是数据处理, 它是数据库应用系统的典, 它具有一切数据库应用系统的特征,如数据录入,数据统计和数据报表等,其系统结构与现实生活紧密结合, 具体直观。工资管理系统也是数据库应用开发中经常进行例证的好例子,它的开发应用简单而又不失一般性。作为一个案例,我们仍需要重复进行一些过程,如创建工程框架,引入数据源,建立消息映射,最终实现统计计算。本程序比较简单,我们的目的是让读者

2、对 VC的编程逐步加以理解,它的意义是非常重要的。4.2系统功能设计在本系统的设计中,将主要实现如下的一些功能:增加记录功能、修改记录功能、 删除记录功能、 刷新记录功能, 最后实现统计计算功能。4.3数据库与数据表的设计作为工资管理系统,它是数据库应用系统数据处理的典,数据库应用系统开发的前提是首先开发数据库和数据库中的数据表。 因此在本案例中,我们仍采用 Microsoft Access 2003 创建数据库和数据表。为此我们先定义一个“职工工资数据表”的结构,如表 4.1 所示。表 4.1“职工工资数据表”结构字段名字段类型字段大小小数位数索引必须填写称年份数字整型是月份数字整型是输入日

3、期日期/时默认是间职工编号数字整型是文本16是部门文本20是基本工资数字长整型自动是业绩工资数字长整型自动是奖金数字长整型自动是津贴数字长整型自动是各种补助数字长整型自动是应发数数字长整型自动是水电费数字长整型自动是房租数字长整型自动是储蓄数字长整型自动是会费数字长整型自动是保险数字长整型自动是扣除总计数字长整型自动是实发工资数字长整型自动是创建数据库及其数据表的步骤如上:(1)启动 Microsoft Office 2003 中的 Microsoft Access 应用程序,出现图 4.1 所示界面, 通过该界面可以创建一个新的数据库或打开一个已经存在的数据库。图 4.1新建数据库选择(2)

4、选择创建新数据库,即选择“空Access 数据库”选项。(3)单击“确定”按钮之后出现保存对话框,确定保存数据库的文件位置( D: VC+ 写作案例)并给定数据库名称:工资管理数据库;然后出现图4.2 所示界面。图 4.2数据库中的数据表设计界面在数据库设计界面中,用户可以打开已经存在的数据表,也可以创建新的数据表。(4) 单击“设计”菜单,即出现一个数据表设计器,用户可以在其中设计一个新的数据表结构,如图 4.3 所示。图 4.3数据表设计器在 Microsoft Access 2003 数据库设计器中,用户可以定义数据表的字段名称、字段类型、字段大小等数据表结构的容。数据表结构一经确定,用

5、户可以打开该数据表,在数据表中输入一些基本数据,以在后面的系统设计中体现设计的效果。最后,系统自动将创建的数据表保存在“D:VC+写作案例 CH432资管理数据库”中,将创建的数据表命名为“职工工资数据表”。注意,在微软的Microsoft Access各版本之间,如在MicrosoftAccess 98与Microsoft Access 2003中,采用旧版本创建的数据库及其数据库中的数据表如要在新的版本中运用, 往往需要在新版本中进行转换才行。4.4创建工资管理系统基本框架在前面我们已经创建了 “工资管理数据库” 、“职工工资数据表” 。它可为应用程序提供一个数据源。 应用程序就是对该数据

6、源的记录进行访问、增加、删除以及数据管理的一切操作。有了这一切的工作,用户就可以着手进行应用系统的构建了。与前面的案例一样,在 VC+应用系统创建中,需要通过向导先创建一个应用程序框架,然后再加入数据控件,与数据源进行绑定,并进行程序的修改与加工制作。创建“工资管理系统”应用程序框架的步骤如下:(1) 结束数据库的创建并启动 VC+,出现 VC+主控界面。(2) 在 VC+主控界面中单击“文件 | 新建”菜单项,出现新建工程类型选择对话框,在工程类型列表中选择MFC AppWizard(EXE)工程类型。(3) 输入工程名称为“工资管理系统”,并选择Win32 平台类型。(4) 单击“确定”按

7、钮,进入文档类型设置。(5) 选择单文档类型,即创建一个单文档界面的应用程序,设置资源使用语言为中文,选择文档查看体系结构支持。(6) 单击“下一步”按钮,进入框架设置的第2 步,出现图 4.4 所示对话框。在该对话框中,需要用户对数据库的类型作一些相关的选择。图 4.4程序框架设置的第2 步(7) 选择“查看数据库不使用文件支持”;这时候Data Source 按钮处于可用状态(或激活状态);在这一种选择下,VC+将为应用系统引入数据环境,即数据源,该数据源就是我们在前面创建的“工资数据库”,而不使用其他类型数据的文件支持。但数据源在系统制作中的引入需要用一定的驱动程序为之进行。(8) 单击

8、“ Data Source ”按钮,出现图 4.5 所示的选择数据源类型的对话框。图 4.5数据源创建类型注意,在 ODBC数据源文件列表中,我们已经创建了一个ODBC数据源文件,因此可以在其中直接选择引用即可。如果没有“工资管理数据库”这样的文件,则往往需要用操作系统控制面板中的ODBC程序加以创建,其方法参考案例一。(9) 单击 OK 按钮,出现数据源中的数据表,即工资数据库中的数据表。选择“职工工资数据表”,如图 4.6 所示。图 4.6选择职工工资数据表(10) 单击 OK按钮选定该数据表。然后返回到图4.4 所示对话框,完成数据源的创建工作。(11) 在图 4.4 所示对话框中单击“

9、完成”按钮,即完成应用程序框架的生成工作, 出现工程框架创建的全部信息, 该信息将提示用户所创建的应用程序框架包括的容,如:应用系统名称、界面类型、适合的操作系统、类文档的创建和系统特色等,如下所示:Application type of工资管理系统:Single Document Interface Application targeting:Win 32Classes to be created:Application: CMyApp in工资管理系统.h and工资管理系统.cppFrame: CMainFrame in MainFrm.h and MainFrm.cppDocument

10、: CMyDocin工资管理系统Doc.h and 工资管理系统Doc. CppRecordView : CMyView in工资管理系统View. h and工资管理系统 View. cppRecordset:CMyset. in工资管理系统Set.h and 工资管理系统 Set.cpp(connected to table 职工工资数据表 in datasource 工资管理数据库)Features:+ Initial toolbar in main frame+ Initial status bar in main frame+ Frinting and Print Preview s

11、upport in view+ 3D Controls+ Uses shared DLL implementation (MFC42.DLL)+ Database support, without file support+ ActiveX Controls support enabled+ Localizable text in:中文 中国确认创建信息之后,出现应用程序框架界面,如图4.7 所示。图 4.7应用程序框架界面4.5开发工资处理界面如前所述,应用系统向导只能生成一个应用程序基本框架,该框架还不具备任何功能, 我们需要在框架的基础上进行系统各种功能的制作。通常一个应用程序框架生成两

12、个对话框,一个是IDD_ABOUTBOX对话框,它是一个说明该系统的对话框,几乎由向导自动完成,如图4.8所示。图 4.8ABOUTBOX对话框该对话框仍然是基本的,如果用户需要修饰或修改,可以根据自己的需要进行。在基本框架中另外一个对话框就是主对话框IDD_MY_FORM,它是我们加工制作的主要容,数据源也是专门为该对话框引入的。主对话框 IDD_MY_FORM中控件的加入与布局在工资管理系统中,主对话框主要用于处理工资管理的一切容。制作该对话框的主要步骤如下:(1)在主对话框 IDD_MY_FORM中将提示文本框“ TODO:在这个对话框里设置表格控制。”删除。(2)在主对话框 IDD_M

13、Y_FORM中放入各种需要的控件,如标签控件、编辑框控件、命令按钮控件,其对话框布局如图4.9 所示。图 4.9主对话框 IDD_MY_FORM控件布局其中,各个控件的属性设置如表4.2- 表 4.5 所示。表 4.2标签对象的基本属性ID标题容IDC_STATICCAPTION职工工资管理系统IDC_STATICNE年份IDC_STATICYF月份IDC_STATICZGBH职工编号IDC_STATICZGXM职工IDC_STATICZGBM部门IDC_STATICJBGZ基本工资IDC_STATICJJ奖金IDC_STATICYJGZ业绩工资IDC_STATICJT津贴IDC_STATIC

14、GZBZ各种补助IDC_STATICRDF水电费IDC_STATICFZOU房租IDC_STATICCX储蓄IDC_STATICHF会费IDC_STATICBX保险IDC_STATICYFHJ应发合计IDC_STATICKCHJ扣除合计IDC_STATICSFGZ实发工资表 4.3编辑框控件的基本属性和编辑容ID编辑容IDC_EDITNF年份IDC_EDITYF月份IDC_EDITZGBH职工编号IDC_EDITZGBM所在部门IDC_EDITZGXM职工IDC_EDITJBGZ基本工资IDC_EDITJJ奖金IDC_EDITYJGZ业绩工资IDC_EDITJT津贴IDC_EDITGZBZ各种

15、补助IDC_EDITRDF水电费IDC_EDITFZOU房租IDC_EDITCX储蓄IDC_EDITHF会费IDC_EDITBX保险IDC_EDITYFHJ应发合计IDC_EDITKCHJ扣除合计IDC_EDITSFGZ实发工资表 4.4命令按钮对象的基本属性ID标题容IDC_BUTIONFIRST| - 第一条IDC_BUTIONNEXT- 下一条IDC_BUTIONPREV- 前一条IDC_BUTIONLAST- | 最后一条IDC_BUTIONSUM执行统计IDC_RADIOADD增加记录IDC_RADIODELETE删除记录IDC_RADIOUPDATE刷新记录表 4.5分组控件对象的

16、基本属性IDIDC_STATICDATA标题工资数据处理IDC_STATICBROWSE工资数据浏览IDC_STATICADDDELETUPD增加与删除IDC_STATICCOUNT个人工资统计为编辑框控件建立数据字段映射在对话框中的一切编辑框控件,均是用于进行数据处理和数据显示的,但首先我们应该为它们建立字段映射,即将创建的数据集中的每一个字段与一个编辑框进行数据绑定”。其方法我们在前面的案例中已经有所涉及。我们以其中的一个编辑框,即“年份”编辑框为例,说明为编辑框与数据集中的字段建立映射关系的方法。为此进行如下操作:( 1)在主对话框 IDD_MY FORM中选取“年份”编辑框控件。( 2

17、)用鼠标右键单击该对话框,出现一个快捷菜单。( 3)在快捷菜单中单击“建立类向导”,出现类向导对话框。(4)在类向导对话框中将页面切换至Member Variables页面并设置类名为 CmySet。该对话框列出了数据集的全部字段名、字段类型和字段的成员变量名称,但成员变量名是在创建数据源时自动生成的,往往不便于与编辑框建立映射关系, 为此将全部成员变量名称删除,并重新定义字段的成员变量名称。重新定义后的字段变量名称如图4.10 所示。图 4.10重新定义的字段变量名称(5) 在 Classname 列表中选择 CmyView,出现为编辑框控件与字段成员变量建立消息映射的页面,如图 4.11

18、所示。图 4.1l编辑框控件与字段变量映射页面(6) 选中 IDC_EDITNF(年份编辑 ) 控件资 源索引,再单击AddVariable按钮,出现变量选择列表框。 在字段选择列表框中选择 “年份”成员变量,如图4.12 所示。图 4.12字段成员变量列表(7) 单击 OK 按钮,即完成“年份”编辑框与“年份”字段成员变量的映射。采用相同的方法为全部编辑框控件建立消息映射,然后编译对话框,则发现可以在编辑框中修改数据表中的记录。为命令按钮增加函数并编制过程代码事实上,在前面我们已经在编辑框与数据集之间建立了一种映射关系,但处理数据的功能还不是很完善。为此我们需要用一些命令来完成对数据的操作,

19、需要为命令按钮建立函数和编制过程代码。同样,在对话框中存在多个命令按钮,我们以“第一条记录”命令按钮为例来说明建立函数与编制过程的方法。1. “第一条记录”命令按钮的过程代码( 1)在对话框中选取“第一条记录”命令按钮。( 2)用鼠标右键单击该命令按钮,出现一个快捷菜单。( 3)在快捷菜单中单击“建立类向导”菜单项,出现一个消息映射的对话框。(4)在消息映射的对话框中选择Message Maps 页面,选择消息类型为“ ON_CLICKED”并单击 Add Function按钮,出现一个函数命令对话框,建议接受系统命名的函数名即可。( 5)确认函数名后单击 Edit Code 按钮,出现代码编

20、辑框,在代码编辑框中编辑命令按钮的代码,如下所示:void CMyView : : OnButtonfirst ()/ / TODO:Add your controlnotificationhandlercode herem_pSet - MoveFirst ();if (m_pSet - IsBOF()MessageBox (“记录已经在第一条!”)m_pSet - MoveNext ();UpdateData (FALSE);Return;UpdateData (FALSE);这样,“第一条记录”命令按钮的过程代码就编辑完成了。采用同样的方法,我们可以编辑其他命令按钮的过程代码。2“下一条

21、记录”命令按钮的过程代码void CMyView : : OnButtonnext ()/ / TODO:Add your control notification handler ode here m_pSet - MoveNext();if (m_pSet - IsEOF () MessageBox (“记录已经在最后一条!”);m_pSet - MovePrev ();UpdateData (FALSE);Return;UpdateData (FALSE);3“前一条记录”命令按钮的过程代码void CMyView : : OnButtonprev ()/ / TODO:Add your

22、 controlnotificationhandlercode herem_pSet - MovePrev ();if (m_pSet - IsBOF() MessageBox (“记录已经在第一条!”);m_pSet - MoveNext ();UpdateData (FALSE);return;UpdateData (FALSE);4“最后一条记录”命令按钮的过程代码void CMyView : : OnButtonlast ()/ / TODO:Add your controlnotificationhandlercode herem_pSet - MoveLast ();if (m_p

23、Set - IsEOF ()MessageBox (“记录已经在最后一条!” ) ; m_pSet - MovePrev ();UpdateData (FALSE);Return;UpdateData (FALSE);5“增加记录”选项按钮的过程代码void CMyView : : OnRadiodd ()/TODO: Add your control notification handler code herem_pSet - AddNew ();UpdateData (FALSE);6“删除记录”选项按钮的过程代码void CMyView : : OnRadiodelete ()/TODO

24、: Add your control notification handler code herem_pSet - Delete ();m_pSet - MoveNext ();if (m_pSet - IsEOF ()m_pSet- MoveLast ();if (m_pSet - IsBOf()m_pSet - SetFieldNull (NULL);UpdateData (FALSE);7“刷新记录”选项按钮的过程代码void CMyView : : OnRadioupdate ()/TODO: Add your control notification handler code her

25、em_pSet-Edit ();UpdateData ();m_pSet- Update ();m_pSet- Requery ();m_pSet- CancelUpdate ();8“执行统计”命令按钮的过程代码void CMyView : : OnButtonsum ()/TODO: Add your control notification handler code herem_pSet-Edit ();m_pSet-m_YES=m_pSet-m_JBGZ+m_pSet-m_JJ+m_pSet-m_YJGZ+m_pSet-m_JT+ m_pSet-m_GZBZ;m_pSet-m_KCZJ

26、=m_pSet-m_CX+m_pSet-m_HF+m_pSet-m_FZOU+m_pSet-m_RDF +m_pSet-m_BX;m_pSet-m_SFGZ= m_pSet-m_YES- m_pSet-m_KCZZ;UpdateData (FALSE);m_pSet-Requery();m_pSet-Update();最后编译执行工程,检验对话框中的数据处理效果,如图4.13 所示。图 4.13对话框运行效果资源文件分析在工程创建完成后,读者可以对已经创建的工程的一些文件进行阅读和分析。人们常说:软件=文档 +代码,这一“等式”几乎对于一切的开发平台都是适用的; 这里的文档包括用户创建的文档和

27、系统派生的文档两类,无论是用户创建的文档或是系统派生的文档,它们往往都是对系统开发的过程的“记录”。因此,通过阅读这些“记录”,不仅对VC+开发环境有了更深入的了解,而且对整个系统的实现全过程也一清二楚。本小节分析两个文档,一个是工程实现文档,另一个是工程设置文档。1“工资管理系统”工程实现文件工资管理系统实现文件记录了该工程创建的声明、编写的过程代码、资源的消息映射、数据集的创建和控件映射等等容,工程实现文档往往是用户开发过程中编写最多的文档, 一切的过程代码编制往往都是在工程实现文档中进行的。 “工资管理系统”工程实现文档的全部容如下所示(仅供读者在开发实践中参考,若无必要,也可以略去对这

28、部分的阅读):/ 工资管理系统View.cpp : implementationof the CMyViewclass# include “stdafx.h ”# include “工资管理系统 .h ”# include“工资管理系统Set.h ”# include “工资管理系统 Doc.h”# include “工资管理系统 View. h”# ifdef _DEBUG# define new DEBUG_NEW# undef THIS_FILEstatic char THIS_FILE = _FILE_;# endif/CMyViewIMPLEMENT_DYNCREATE (CMyVi

29、ew, CRecordView)BEGIN_MESSAGE_MAP (CMyView, CRecordView)/AFX_MSG_MAP (CMyView)ON_BN_CLICKED (IDC_BUTTONFIRST, OnButtonfirst)ON_BN_CLICKED (IDC_BUTTONNEXT, OnButtonnext)ON_BN_CLICKED (IDC_BUTTONPREV, OnButtonprev)ON_BN_CLICKED (IDC_BUTTONLAST, OnButtonlast)ON_BN_CLICKED (IDC_RADIODD, OnRadiodd)ON_BN_

30、CLICKED (IDC_RADIODELETE, OnRadelete)ON_BN_CLICKED (IDC_RADIOUPDATE, OnRadioupdate)ON_BN_CLICKED (IDC_BUTTONSUM, OnButtonsum)ON_BN_CLICKED (IDC_RADIOEDIT, OnRadioedit)/AFX_MSG_MAP/Standard printing commandsON_COMMAND(ID_FILE_PRINT, CRecordView : : OnFilePrint)ON_COMMAND(ID_FILE_DIRECT, CRecordView :

31、 : OnFilePrint)ON_COMMAND(ID_FILE_PREVIEW,CRecordView:OnFilePrieview)END_MESSAGE_MAP ()/CMyView construction/destructionCMyView : : CMyView (): CRecordView (CMyView : : IDD)/AFX_DATA_INIT (CMyView)m_pSet = NULL;/ AFX_DATA_INIT/TODO: add construction code hereCMyView : : CMyView ()void CMyView : : Do

32、DataExchange (CDataExchange* pDX)CRecordView : : DoDataExchange (pDX);/AFX_DATA_MAP (CMyView)DDX_FieldText (pDX, IDC_EDITNF, m_pSet - m_NF,m_pSet);DDX_FieldText (pDX, IDC_EDITYF, m_pSet - m_YF, m_pSet); DDX_FieldText (pDX, IDC_EDITZGBH, m_pSet - m_ZGBH,m_pSet);DDX_FieldText(pDX,IDC_EDITZGBM, m_pSet

33、-m_BM,m_pSet);DDX_FieldText(pDX,IDC_EDITZGXM, m_pSet -m_XM,m_pSet);DDX_FieldText (pDX, IDC_EDITJBGZ, m_pSet- m_JBGZ,m_pSet);DDX_FieldText (pDX, IDC_EDITJJ, m_pSet - m_JJ, m_pSet);DDX_FieldText (pDX, IDC_EDITSFGZ, m_pSet- m_SFGZ,m_pSet);DDX_FieldText(pDX,IDC_EDITYFHJ, m_pSet -m_YFS,m_pSet);DDX_FieldT

34、ext (pDX, IDC_EDITKCHJ, m_pSet- m_KCZJ,m_pSet);DDX_FieldText (pDX, IDC_EDITBX, m_pSet - m_NF,m_pSet); DDX_FieldText(pDX, IDC_EDITBX, m_pSet-m_BX, m_pSet);DDX_ FieldText(pDX, IDC_EDITCX, m_pSet-m_CX, m_pSet); DDX _FieldText(pDX, IDC _EDITFZOU, m_pSet-m_FZOU,m_pSet);DDX _FieldText(pDX,IDC_EDITGZBZ, m_

35、pSet-m_GZBZ,m_pSet);DDX_FieldText(pDX, DDX_FieldText(pDX, DDX_FieldText(pDX, DDX_FieldText(pDX,IDC _EDITHF, m_pSet-m_HF, m_pSet);IDC_ EDITJT, m_pSet-m_JT, m_pSet);IDC_EDITRDF,m pSet-m_RDF, m pSet);IDC_EDITYJGZ,m_pSet-m_YJGZ,m_pSet);/AFX_ DATA_ MAPBOOL CMyView : PreCreateWindow(CREATESTRUCT&/TODO: Mo

36、dify the Window class or styles here by modifying/the CREATESTRUCT csreturn CRecordView : PreCreateWindow(cs);void CMyView:OnInitialUpdate()m_pSet = &GetDocument()-m_mySet;CRecordView : OnInitialUpdate();GetParentFrame () -RecalcLayout();Resize ParentToFit();/CMyView printingBOOL CMyView : OnPrepare

37、Printing(CPrintInfo* pInfo)/default preparationreturn DoPreparePrinting(pInfo);void CMyView:OnBeginPrinting(CDC* /*pDC*/,/*pInfo*/)/TODO: add extra initialization before printingvoidCMyView:OnBeginPrinting/*pDC*/,CPrintInfo* /*pInfo*/)CPrintInfo*(CDC*/TODO: add cleanup after printing/ CMyView diagno

38、stics# ifdef _DEBUGvoid CMyView : AssertValid () constCRecordView : AssertValid ();void CMyView :Dump (CDumpContext & sc) constCRecordView : Dump(dc);CMyDoc*CMyView:GetDocument ()/non-debug versionisinlineASSERT(m_pDocument-IsKindOf(RUNTIME_CLASS(CMyDoc);Return(CMyDoc*)m_pDocument;# endif /_DEBUG/CM

39、yView database supportCRecordset* CMyView : OnGetRecordset()return m_pSet;/CMyView message handlersvoid CMyView : OnButtonfirst()/TODO: Add your control notification handler code herem_pSet-MoveFirst ();if(m_pSet-IsBOF ()Mes sageBox ( 记录已经在第一条!);m_pSet-MoveNext ();UpdateData (FALSE);return;UpdateDat

40、a ( FALSE);void CMyView : OnButtonnext ()/TODO:Add your controlnotificationhandlercode hereM_ pSet-MoveNext ();If (m_pSet-IsEOF()MessageBox ( 记录已经在最后一条! );m_pSet-MovePrev ();UpdateData(FALSE);return;UpdateData (FALSE);void CMyView:OnButtonprev ()/TODO:Add your controlnotificationhandlercode herem_pS

41、et-MovePrev ();if(m_pSet-IsBOF()MessageBox(记录已经在第一条! );m_ pSet-MoveNext ();UpdateData(FALSE);return;UpdateData (FALSE);void CMyView:OnButtonlast ()/TODO:Add your controlnotificationhandlercode herem_pSet-Edit ();if m_pSet-IsEOF()MessageBox(记录已经在第一条!m_pSet-MovePrev (););-UpdateData(FALSE);return;Upda

42、teData(FALSE);void CMyView : OnRadiodd()/TODO: Add yourcontrolnotificationhandler code herem_pSet-AddNew ();UpdateData(FALSE);void CMyView : OnRadiodelete()/TODO: Add yourcontrolnotificationhandler code herem_pSet-Delete();m_pSet-MoveNext();if (m_pSet-IsEOF()m_pSet-MoveLast();if(m_pSet-IsBOF()m_pSet

43、-SetFieldNull(NULL);UpdateData(FALSE);void CMyView:OnRadioupdate()/TODO: Add yourcontrolnotificationhandler code herem_pSet-Edit () ;UpdateData ();m_pSet-Update ();m_pSet-Requery ();/ m_pSet-CancelUpdate ();void CMyView:OnButtonsum()/TODO: Add your control notification handler code herem_ pSet-Edit ();m_pSet-m_YFS=0;m_ pSet-m_KCZJ=0;m_pSe

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!