1、vc+课程设计报告Visual C+程序设计课程设计报告班级:网络Z091 学号:094553 姓名:赵迷叶一、设计题目1、创建数据库应用程序后台数据库可以连接ACCESS,SQL Server;创建单文档的应用程序,可以选择数据库支持,View类的基类选择RecordView。使用系统的Set类;不选择数据库支持,View类的基类选择FormView,自己创建Set类(基类选择RecordSet),View类的基类选择FormView。功能要求:查询、浏览、编辑、添加、删除。2、 编制购物程序包含3类商品,能进行选择,计算合计。 二、课程设计报告内容要求1、系统设计系统功能模块图。对各个模块
2、的功能作详细的说明。2、系统实现(1)各模块主要代码分析(可附上所指代码)(2)开发过程中遇到的问题及解决的办法设计一: 创建教师管理信息数据库应用程序一、课程设计代码(1)连接数据代码:void CTeacherView:OnInitialUpdate() CFormView:OnInitialUpdate(); GetParentFrame()-RecalcLayout(); ResizeParentToFit(); m_list.InsertColumn(0,教师编号); m_list.InsertColumn(1,性别); m_list.InsertColumn(2,年龄); m_li
3、st.InsertColumn(3,工资); m_list.SetColumnWidth(0,80); m_list.SetColumnWidth(1,80); m_list.SetColumnWidth(2,80); m_list.SetColumnWidth(3,80); CString sql=select * from teacher; m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql); int i=0; while(!m_set.IsEOF() m_list.InsertItem(i,m_set.m_column1); m_list.SetItemTex
4、t(i,1,m_set.m_column2); CString str; str.Format(%s,m_set.m_column3); m_list.SetItemText(i,2,str); m_list.SetItemText(i,3,m_set.m_column4); m_set.MoveNext(); i+; m_set.Close();(2)查询代码:void CTeacherView:OnQuery() UpdateData(TRUE); if(m_chx=) this-MessageBox(请输入要查询的教师编号!); else CString sql=select * fro
5、m teacher where 教师编号=+m_chx+; m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql); m_list.DeleteAllItems(); int i=0; while(!m_set.IsEOF() m_list.InsertItem(i,m_set.m_column1); m_list.SetItemText(i,1,m_set.m_column2); CString str; str.Format(%s,m_set.m_column3); m_list.SetItemText(i,2,str); m_list.SetItemText(i,
6、3,m_set.m_column4); i+; m_set.MoveNext(); m_set.Close(); m_list.SetRedraw(1); if(m_chx!=m_set.m_column1) this-MessageBox(您输入的教师编号不存在!); / TODO: Add your control notification handler code here (3)浏览代码:void CTeacherView:OnBrows() m_list.DeleteAllItems(); CString sql=select * from teacher; m_set.Open(A
7、FX_DB_USE_DEFAULT_TYPE,sql); int i=0; while(!m_set.IsEOF() m_list.InsertItem(i,m_set.m_column1); m_list.SetItemText(i,1,m_set.m_column2); CString str; str.Format(%s,m_set.m_column3); m_list.SetItemText(i,2,str); m_list.SetItemText(i,3,m_set.m_column4); i+; m_set.MoveNext(); m_set.Close(); / TODO: Ad
8、d your control notification handler code here (4)编辑代码: void CTeacherView:OnEdit() int i=m_list.GetSelectionMark(); if(iMessageBox(先选取记录); return; CString sql; sql.Format(select * from teacher where 教师编号 = %s,m_list.GetItemText(i,0); m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql); CTeacherdlg dlg; dlg.m_num
9、=m_set.m_column1; dlg.m_age=m_set.m_column3; if(m_set.m_column2=男) dlg.m_sex=0; else dlg.m_sex=1; dlg.m_wage=m_set.m_column4; dlg.DoModal(); m_set.Edit(); m_set.m_column1=dlg.m_num; m_set.m_column3=dlg.m_age; if(dlg.m_sex=0) m_set.m_column2=男; else m_set.m_column2=女; m_set.m_column4=dlg.m_wage; m_se
10、t.Update(); m_set.Close(); / TODO: Add your control notification handler code here (5)添加代码: void CTeacherView:OnAdd() CTeacherdlg dlg; if(dlg.DoModal()=IDOK) m_set.Open(AFX_DB_USE_DEFAULT_TYPE,NULL); m_set.AddNew(); m_set.m_column1=dlg.m_num; if(dlg.m_sex=0) m_set.m_column2 =男; else m_set.m_column2=
11、女; m_set.m_column3=dlg.m_age; m_set.m_column4=dlg.m_wage; m_set.Update(); m_set.Close(); / TODO: Add your control notification handler code here (6)删除代码: void CTeacherView:OnDel() int i=m_list.GetSelectionMark(); if(iMessageBox(先选取记录); else CString xnum1; char xnum10; int x=m_list.GetItemText(i,0,xn
12、um,10); xnum1.Format(%s,xnum); CString sql=select * from teacher where 教师编号= + xnum1 + ; m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql); m_set.Delete(); m_set.Close(); / TODO: Add your control notification handler code here 二、结果截图:设计二: 购物程序设计一、 程序设计代码: (1) 内容记录信息代码: struct commoditychar * strType;char * st
13、rName;int nPrice;choose=餐具,刀叉,2,餐具,勺子,3,餐具,铁锅,5,餐具,盘子,2,书籍,漫画书,1,书籍,小说,2,书籍,散文,12,书籍,文学书,6,球类,篮球,22,球类,足球,25,球类,羽毛球,62,球类,网球,82,;(2)对话框添加数据代码: BOOL CMyDlg:OnInitDialog() /CDialog:OnInitDialog(); CDialog:OnInitDialog(); m_danjia=单价:; m_gongji=共计:; total=0; m_choosek.AddString (餐具); m_choosek.AddStrin
14、g (书籍); m_choosek.AddString (球类); m_choose=餐具; for(int i=0;i4;i+) m_listk1.AddString (choosei.strName ); UpdateData(0);(3)点击确定代码:void CMyDlg:OnOK() UpdateData();for(int i=0;i12;i+)if(m_list1=choosei.strName ) total+=choosei.nPrice ;break; m_listk2.AddString (m_list1); char tbuf80; sprintf(tbuf,共计: %
15、d元,total); m_gongji=tbuf; UpdateData(0);(4)点击取消代码: void CMyDlg:OnCancel() exit(1); / TODO: Add extra cleanup here CDialog:OnCancel();(5)物品类型选择代码: void CMyDlg:OnSelchangeChooseType() int nStart; int nIndex=m_choosek.GetCurSel (); m_choosek.GetLBText (nIndex,m_choose); if(m_choose=餐具) nStart=0; else i
16、f(m_choose=书籍) nStart=4; else nStart=8;m_listk1.ResetContent ();for(int i=nStart;inStart+4;i+)m_listk1.AddString (choosei.strName ); / TODO: Add your control notification handler code here (6)列表选择代码:void CMyDlg:OnSelchangeList1() UpdateData(); for(int i=0;i12;i+) if(m_list1=choosei.strName ) char tbuf80; sprintf(tbuf,单价:%d元,choosei.nPrice ); m_danjia=tbuf; UpdateData(0); break; / TODO: Add your control notification handler code here 二、 结果截图: 三、 设计心得:通过对教师管理信息系统以及购物的设计,学到了很多VC+的知识,懂得了连接数据库得到数据信息,体现了学科间的紧密联系,让我受益匪浅,提高了我们的设计能力,让我受益匪浅。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1