MFC开发学生信息管理系统详细Word文件下载.doc
- 文档编号:13161721
- 上传时间:2022-10-07
- 格式:DOC
- 页数:24
- 大小:1.11MB
MFC开发学生信息管理系统详细Word文件下载.doc
《MFC开发学生信息管理系统详细Word文件下载.doc》由会员分享,可在线阅读,更多相关《MFC开发学生信息管理系统详细Word文件下载.doc(24页珍藏版)》请在冰豆网上搜索。
(图2.3)
为数据表创建CRecordSet用户类
按“Ctrl+W”进入“建立类向导(即MFCClasWizard)”单击“AddClass...”选择“New...”如图(图2.4)所示.按照(图2.5)→(图2.6)→(图2.7)的安装顺序。
即可完成创建CRecordSet用户类的工作。
(图2.4)
(图2.5)
(图2.6)
(图2.7)
在stdafx.h文件中添加CRecordSet包含语句:
#include<
afxdb.h>
如图(图2.8)所示
(图2.8)
(三)构建班级信息对话框类
按“Ctrl+R”键,打开“插入资源”,选择dialog(对话框),选择新建。
将名字改为IDD_CLASSINFO,标题为“班级信息输入”。
按照(图3.1)添加控件。
添加的控件
ID号
标题
其他属性
编辑框(班级号)
IDC_EDIT_CLASSNO
默认
编辑框(所在院系)
IDC_EDIT_DEPART
编辑框(专业)
IDC_EDIT_SPECIAL
组合框(学制)
IDC_COMBO_YEAR
日期/时间控件(入学时间)
IDC_DATETIMEPICKER1
对于学制框:
使用Data页面来添加数据项,按Ctrl+Enter换行。
(图3.1)
完成控件添加后,选择“建立类向导”,创建一个新类、即CClassInfoDlg,如图(3.2)所示。
然后按照下图,为控件添加成员变量。
(图3.2)
(图3.3)
控件ID号
变量类别
变量类型
变量名
Value
CString
m_strClassNO
m_strDepart
m_strSpecial
m_strYear
CTime
m_tEnter
(图3.4)
使用类向导为CClassInfoDlg类添加WM_INITDIALOG消息映射。
代码位于附录1。
见(图3.5)
使用类向导为CClassInfoDlg类添加IDOK按钮的BN_CLICKED消息映射。
代码位于附录2。
见(图3.6)
(图3.5)
(图3.6)
鉴于添加代码都是从类向导找到相应的代码区域,以后就不详细截图了。
(四)实现班级基本信息添加和显示功能
为CSTUDXINXIView类添加一个LOGFONT型成员变量m_lfFont
选择AddMemberVariable...出现(图4.1)所示输入下面表格的变量类型和名称即可。
连续三次。
变量名称
LOGFONT
m_lfFont
m_strSQL
在CSTUDXINXIView:
:
CSTUDXINXIView()添加代码。
代码位于附录3.
(图4.1)
添加一个成员函数
如(图4.2)所示。
(图4.2)
添加代码,位于附录4.
在STUDXINXIView.cpp文件的前面添加CClassInfo类的包含语句:
#include"
ClassInfoSet.h"
打开菜单资源,添加如(图4.3)所示的菜单项。
(图4.3)
用类向导为CSTUDXINXIView类添加该菜单项的COMMAND消息映射,并添加代码。
代码位于附录5
在CSTUDXINXIView:
:
OnDraw函数添加代码。
代码位于附录6
在STUDXINXIView.cpp文件的前面添加ClassInfoDlg类的包含语句:
#include"
ClassInfoDlg.h"
(五)查询班级信息
添加一个新的对话资源框,名字改为ID_SEEKCLASS标题定为“查询班级信息”。
按照下面的表格添加控件。
布局如(图5.1所示)
单选按钮(按所在院系)
IDC_RADIO1
单选按钮(按专业)
IDC_RADIO2
编辑框
IDC_EDIT1
(图5.1)
建立新类,为IDC_EDIT1添加一个CString型变量m_strSeek
为CSeekClassDlg类添加消息映射,代码位于附录7
为CSeekClassDlg类添加CString型成员变量m_strSQL
用类向导为IDOK按钮添加消息映射。
代码位于附录8
打开菜单资源,添加菜单项如(图5.2)所示。
用类向导添加消息映射。
代码位于附录9
在STUDXINXIView.cpp文件的前面添加包含语句:
SeekClassDlg.h"
(图5.2)
运行,编译。
附录:
1
m_strYear="
4"
;
//有关于消息映射
UpdateData(FALSE);
2
UpdateData();
m_strClassNO.TrimLeft();
m_strDepart.TrimLeft();
m_strSpecial.TrimLeft();
if(m_strDepart.IsEmpty())
MessageBox("
必须要有所院系!
"
);
elseif(m_strSpecial.IsEmpty())
必须要有班级!
else
if(m_strClassNO.IsEmpty())
MessageBox("
必须要有班级号!
else
3
memset(&
m_lfFont,0,sizeof(LOGFONT));
m_lfFont.lfHeight=12;
m_lfFont.lfCharSet=GB2312_CHARSET;
strcpy(m_lfFont.lfFaceName,"
宋体"
m_strClassNO=m_strSQL="
4
CFontfont;
LOGFONTlf=m_lfFont;
lf.lfWeight=700;
strcpy(lf.lfFaceName,"
幼圆"
font.CreateFontIndirect(&
lf);
TEXTMETRICtm;
pDC->
GetTextMetrics(&
tm);
intnLineHeight=(int)((tm.tmHeight+tm.tmExternalLeading)*1.5);
//行高为1.5倍字符高度
intx=0,y=0,nWidth;
CFont*oldFont=pDC->
SelectObject(&
font);
//使用新字体
//输出表头
CStringstrHeader[]={"
班级号"
"
所在院系"
专业名称"
学制"
入学时间"
};
intnStrWidth[]={10,25,25,8,10};
CClassInfoSetcSet;
cSet.m_strFilter=strSQL;
cSet.Open();
for(UINTi=0;
i<
cSet.m_nFields;
i++)
{
//计算每一个字段所需的长度
nWidth=tm.tmAveCharWidth*nStrWidth[i];
pDC->
TextOut(x,y,strHeader[i]);
x+=nWidth;
}
SelectObject(oldFont);
//显示具体内容
CStringstr;
while(!
cSet.IsEOF())
if(strClass==cSet.m_classno)
{
//这是要强调显示的班级
lf.lfWeight
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MFC 开发 学生 信息管理 系统 详细