学生信息管理系统(MFC、VC、ODBC数据库)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用MFC做的一个学生信息管理系统,有增加、删除、排序、筛选功能,系统通过ODBC方式连接数据库。
由于文库不支持RAR,故需要完整的程序以及数据库可以联系俺,希望对大家有帮助。
下面是简单的报告:
C++程序设计报告
设计题目:学生信息管理系统
班级:
姓名:
学号:
指导教师:
时间:2011年12月13日
目录
1.设计目标……………………………………………………………
2.设计内容……………………………………………………………
3.设计思想……………………………………………………………
4.设计说明……………………………………………………………
5.设计步骤……………………………………………………………
6.软件演示……………………………………………………………
7.感想总结……………………………………………………………
学生信息管理系统(MFC)
1.设计目标
了解Windows应用程序的结构与DOS程序的不同,掌握应用MFC类库编
写Windows应用程序的基本模式与用ODBC方式访问数据库。
2.设计内容
以学生信息管理系统为例,通过对简单应用软件系统的设计,编制、调试,实现简单的增加、删除、排序等运算,以学习应用MFC库类编写对话框的原理,加深对C++类的学习及应用。
3. 设计思想
基于MFC库类对对话框界面的设计,通过创建类成员函数成员变量,编辑控件创建消息映射,调用消息函数完成数据的输入输出,实现相关功能。生成简单的应用软件。
4.设计说明
(1)包含的功能有:查看、增加、删除、排序、筛选等功能。
(2)通过access创建数据库并通过OD方式访问数据库。
(3)编辑界面上的不同按钮,创建消息映射,以完成相关的各种操作。5.设计步骤
1、创建数据库:
打开access,并创建一个新表“student”,输入相关内容,选择类型。并创建主键后。完成后保存。
2、添加ODBC数据源
打开“ODBC数据源管理器”
添加
选择
| 建立类向导| 成员变量标签|class name列表下选CmySet(数据库的结果集)。
先将Member中不好记的值通过“Delete Variable”删除,再“Add Vairiables”添加,改为自己好记的的名字
将编辑框(在CmyView视图类中)与上述变量绑定:Add Variable…然后选而不是输入。
完成以上的操作后,编译,运行
现在为下面的功能键的实现进行操作
增加新的对话框(窗体)及创建类成员
在查询或过滤记录时,需要一个对话框,用于添加信息,增加对话框的方法:VC主菜单,“插入”|“资源”|“对话框(Dialog)类型”| 放一个“分组框控件”,标题为“添加信息”| 在分组框内按图设置好哥编辑框和按钮:
建立类向导,按图分配好成员变量并绑定好
为其中的“确定”按钮,添加代码:
void CDlgADD::OnOK()
{
// TODO: Add extra validation here
UpdateData();
if(m_XH==0||m_XM==""||m_XB==""||m_BJ=="")
{
MessageBox("请完整输入数据");
return;
}
CDialog::OnOK();
}
同理,添加查询条件的对话框:
添加功能键的代码:
双击向导中的“IDD_MY_FORM”,
双击主界面的“添加”按钮
void CMyView::OnButtonAdd() //增加
{
// TODO: Add your control notification handler code here
CDlgADD DlgAdd;
if(DlgAdd.DoModal()==IDOK)
{
m_pSet->AddNew();
m_pSet->m_XH=DlgAdd.m_XH;
m_pSet->m_XM=DlgAdd.m_XM;
m_pSet->m_XB=DlgAdd.m_XB;
m_pSet->m_BJ=DlgAdd.m_BJ;
m_pSet->Update();//更新记录集
m_pSet->Requery();//重新提取数据
m_pSet->MoveLast();//移动下一条记录
UpdateData(FALSE); //更新视图
}
}
此时需要在“学生信息管理系统View.cpp”中添加头文件“#include "DlgADD.h"”删除键代码:
void CMyView::OnButtonDel()
{
// TODO: Add your control notification handler code here
m_pSet->Delete();
m_pSet->MoveNext();
if(m_pSet->IsEOF())
m_pSet->MoveLast();
if(m_pSet->IsBOF())
m_pSet->SetFieldNull(NULL);
UpdateData(FALSE);
}
“排序”按钮代码
void CMyView::OnButtonPx()
{
// TODO: Add your control notification handler code here
m_pSet->m_strSort="学号";
m_pSet->Requery ();
UpdateData(FALSE);
}
“<<”向前查询键代码:
void CMyView::OnBUTTONpre()
{
// TODO: Add your control notification handler code here
UpdateData(FALSE);
m_pSet->MovePrev();
}
“>>”向后查询键代码:
void CMyView::OnBUTTONnext()
{
// TODO: Add your control notification handler code here
m_pSet->MoveNext();
UpdateData(FALSE);
}
“筛选”按钮代码: