学生信息管理系统Word格式文档下载.docx
- 文档编号:22960158
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:18
- 大小:90.39KB
学生信息管理系统Word格式文档下载.docx
《学生信息管理系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统Word格式文档下载.docx(18页珍藏版)》请在冰豆网上搜索。
OnCreate(LPCREATESTRUCTlpCreateStruct)
{
if(CFrameWnd:
OnCreate(lpCreateStruct)==-1)
return-1;
if(!
m_wndToolBar.CreateEx(this,TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_GRIPPER|CBRS_TOOLTIPS|CBRS_FLYBY|CBRS_SIZE_DYNAMIC)||!
m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
TRACE0("
Failedtocreatetoolbar\n"
);
return-1;
//failtocreate
}
If(!
m_wndStatusBar.Create(this)||!
m_wndStatusBar.SetIndicators(indicators,sizeof(indicators)/sizeof(UINT)))
Failedtocreatestatusbar\n"
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&
m_wndToolBar);
return0;
voidCMainFrame:
OnMenuitemadd()
CMyDlgAdddlg1;
dlg1.DoModal();
OnMenuitemmodify()
CMyDlgModifydlg2;
dlg2.DoModal();
OnMenuitemseek()
CMyDlgSeekdlg3;
dlg3.DoModal();
2.录入消息对话框的消息映射:
HBRUSHCMyDlgAdd:
OnCtlColor(CDC*pDC,CWnd*pWnd,UINTnCtlColor)
HBRUSHhbr=CDialog:
OnCtlColor(pDC,pWnd,nCtlColor);
if(nCtlColor==CTLCOLOR_BTN||nCtlColor==CTLCOLOR_STATIC)
pDC->
SetTextColor(RGB(0,0,255));
SetBkMode(TRANSPARENT);
returnhbr;
voidCMyDlgAdd:
OnPaint()
CPaintDCdc(this);
//devicecontextforpainting
LOGFONTlf;
memset(&
lf,0,sizeof(LOGFONT));
lf.lfHeight=28;
lf.lfCharSet=GB2312_CHARSET;
strcpy((LPSTR)&
(lf.lfFaceName),"
华文新魏"
CFontcf;
cf.CreateFontIndirect(&
lf);
m_Title.SetFont(&
cf);
OnOK()
{
UpdateData();
structRecord*re=per;
fstreamfile;
CFilefile1;
file.open("
record.txt"
ios:
in|ios:
out|ios:
app);
intnIndex=m_Speciality.GetCurSel();
inti=GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO2);
constintsize=sizeof(structRecord);
if((re)->
id==0||(re)->
name==0||re->
speciality==0||re->
grade==0||i==0)
MessageBox("
输入不完整,不能提交!
"
else
{
strcpy((re)->
id,m_Num);
name,m_Name);
CStringstr;
inty,m,d;
y=m_Birth.GetYear();
m=m_Birth.GetMonth();
d=m_Birth.GetDay();
str.Format("
%d-%d-%d"
y,m,d);
strcpy(re->
date,str);
if(i==IDC_RADIO1)
strcpy(re->
sex,"
男"
if(i==IDC_RADIO2)
女"
if(nIndex==0)
speciality,"
计算机"
if(nIndex==1)
数学"
grade,m_Grade);
file<
<
re->
id<
"
name<
sex<
speciality<
grade<
date<
endl;
}
file.close();
CDialog:
OnOK();
MessageBox("
添加成功!
MB_OK,MB_ICONASTERISK);
2.学生信息修改对话框消息映射:
BOOLCMyDlgModify:
OnInitDialog()
OnInitDialog();
UpdateData(false);
constintnColumns=6;
m_list1.InsertColumn(0,"
学号"
m_list1.InsertColumn(1,"
姓名"
m_list1.InsertColumn(2,"
性别"
m_list1.InsertColumn(3,"
专业"
m_list1.InsertColumn(4,"
年级"
m_list1.InsertColumn(5,"
出生日期"
CRectrect4;
m_list1.GetClientRect(rect4);
for(inti=0;
i<
nColumns;
i++)
m_list1.SetColumnWidth(i,rect4.Width()/nColumns);
structRecordper;
per,0,sizeof(structRecord));
out);
if(!
file)
{
Openerror!
for(intj=0;
!
file.eof();
j++)
file>
>
per.id>
per.name>
per.sex>
per.speciality>
per.grade>
per.date;
m_list1.InsertItem(j,per.id);
m_list1.SetItemText(j,1,per.name);
m_list1.SetItemText(j,2,per.sex);
m_list1.SetItemText(j,3,per.speciality);
m_list1.SetItemText(j,4,per.grade);
m_list1.SetItemText(j,5,per.date);
strcpy(per.id,"
strcpy(per.name,"
strcpy(per.sex,"
strcpy(per.speciality,"
strcpy(per.grade,"
strcpy(per.date,"
ListView_SetExtendedListViewStyle(m_list1.m_hWnd,LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
//设置可以选整行
returnTRUE;
voidCMyDlgModify:
OnClickList1(NMHDR*pNMHDR,LRESULT*pResult)
CListCtrl*pListCtrl=(CListCtrl*)GetDlgItem(IDC_LIST1);
ASSERT(pListCtrl!
=NULL);
POSITIONpos=m_list1.GetFirstSelectedItemPosition();
if(pos!
=NULL)
nItem=m_list1.GetNextSelectedItem(pos);
m_Id=m_list1.GetItemText(nItem,0);
m_Name=m_list1.GetItemText(nItem,1);
if(m_list1.GetItemText(nItem,2)=="
)
CheckRadioButton(IDC_RADIO1,IDC_RADIO2,IDC_RADIO1);
else
CheckRadioButton(IDC_RADIO1,IDC_RADIO2,IDC_RADIO2);
m_Speciality=m_list1.GetItemText(nItem,3);
m_Grade=m_list1.GetItemText(nItem,4);
m_Date=m_list1.GetItemText(nItem,5);
m_Num.Format("
%d"
nItem+1);
UpdateData(false);
*pResult=0;
if(IDNO==MessageBox("
确定要修改吗?
"
提问"
MB_YESNO|MB_ICONQUESTION))
return;
fstreamfile1,file2;
file1.open("
in);
file2.open("
record1.txt"
file1||!
file2)
MessageBox("
intn=0,m=0;
while(!
file1.eof())
n++;
file1>
n--;
m=n;
file1.close();
intnIndex=m_list1.GetSelectionMark();
charid[20]="
0"
;
strcpy(id,m_list1.GetItemText(nIndex,0));
memset(&
while(n)
if(strcmp(per.id,id)!
=0)
file2<
per.id<
per.name<
per.sex<
per.speciality<
per.grade<
per.date<
else//要修改的记录
strcpy(per.id,m_Id);
strcpy(per.name,m_Name);
inti=GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO2);
if(i==IDC_RADIO1)
{
strcpy(per.sex,"
}
if(i==IDC_RADIO2)
strcpy(per.speciality,m_Speciality);
strcpy(per.grade,m_Grade);
strcpy(per.date,m_Date);
file2<
}
n--;
file2.close();
remove("
rename("
m_Num="
m_Name="
m_Speciality="
m_Grade="
UpdateData(FALSE);
RefreshData(m);
RefreshData(intm)
m_list1.DeleteAllItems();
m_list1.SetRedraw(FALSE);
inti=0;
while(i<
m)
m_list1.InsertItem(i,per.id);
m_list1.SetItemText(i,1,per.name);
m_list1.SetItemText(i,2,per.sex);
m_list1.SetItemText(i,3,per.speciality);
m_list1.SetItemText(i,4,per.grade);
m_list1.SetItemText(i,5,per.date);
i++;
m_list1.SetRedraw(TRUE);
4.学生信息查找代码:
voidCMyDlgSeek:
OnButton1()
intn=0;
charid[20]="
strcpy(id,m_Num);
while(n)
{file1>
if(strcmp(per.id,id)!
{
确定要删除吗?
m_Speciality="
m_Birth="
OnButton2()
{CDialog:
OnCancel();
intflag;
Error!
flag=0;
file.eof()&
&
flag)
if(m_Num==per.id)
m_Name=per.name;
if(strcmp(per.sex,"
)==0)
else
m_Speciality=per.speciality;
m_Grade=per.grade;
m_Birth=per.date;
flag=1;
if(flag==0)
查无此人!
五心得体会和参考资料
工程中还存在很多不足,不是很完善。
通过工程的构思,构建,到模块的实现,最后代码的编写,以及令人头痛的改错过程。
制作中不断遇到新问题,自己努力去看书,去图书馆查询资料,实在不会就去请教学的比较好的同学,大家一起思考怎么解决一个个难题,不断的错误,不断的更正,有点摸着石头过河的意思。
自己也发现了自己还存在许多问题,但是在工程的制作中,我觉得我很有收获,对各方面的知识有了新的认识,有了更加深刻的理解,增加了自己的构建工程能力,提高自己解决问题的能力。
在以后的生活中,要自己主动去做一些工程,因为我觉得在工程项目中可以学习到很多知识和经验,可以实实在在得提高自己的能力。
参考资料:
《VisualC++》郑阿奇主编清华大学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)