⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 studentsdoc.cpp

📁 这是一个用链表实现的简单的学生管理程序,有链表的插入删除等各种操作
💻 CPP
字号:
// studentsDoc.cpp :  CstudentsDoc 类的实现
//

#include "stdafx.h"
#include "students.h"

#include "studentsDoc.h"
#include ".\studentsdoc.h"
#include "AddDialog.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif


// CstudentsDoc

IMPLEMENT_SERIAL(CStu,CObject,1)
CStu::CStu( CString pNum,int pAge,CString pName,CString pSex,CString pAdd,CString pTel)
{
	m_pAge=pAge;
	m_pNum=pNum;
	m_pName=pName;
	m_pSex=pSex;
	m_pTel=pTel;
	m_pAdd=pAdd;
}
void CStu::Drawing(CDC *pDC)
{
	CString str;
	
	str.Format("学号:%s",m_pNum);
	pDC->TextOut(20,80,str);
	str.Format("姓名:%s",m_pName);
	pDC->TextOut (20,100,str);
	str.Format("性别:%s",m_pSex);
	pDC->TextOut (20,120,str);
	str.Format("电话:%s",m_pTel);
	pDC->TextOut (20,140,str);
    str.Format("年龄:%d",m_pAge);
	pDC->TextOut (20,160,str);
	str.Format("地址:%s",m_pAdd);
	pDC->TextOut (20,180,str);
}
void CStu::Serialize(CArchive &ar)
{
	if(ar.IsStoring())
		ar<< m_pNum<< m_pAge<< m_pName<< m_pSex
		  << m_pTel<<m_pAdd;
	else
		ar>>m_pNum>> m_pAge>> m_pName>> m_pSex
		>>m_pTel>>m_pAdd;
}

int CStu::GetNum()
{
	return m_pAge;
}

//void CStu::ShowAll()
//{

//}
IMPLEMENT_DYNCREATE(CstudentsDoc, CDocument)

BEGIN_MESSAGE_MAP(CstudentsDoc, CDocument)
	ON_COMMAND(ID_OPTIONS_ADD, OnOptionsAdd)
	ON_UPDATE_COMMAND_UI(ID_OPTIONS_ADD, OnUpdateOptionsAdd)
	ON_COMMAND(ID_OPTIONS_DEL, OnOptionsDel)
	ON_COMMAND(ID_OPTIONS_MODY, OnOptionsMody)
//	ON_COMMAND(ID_SHOW, OnShow)
END_MESSAGE_MAP()


// CstudentsDoc 构造/析构

CstudentsDoc::CstudentsDoc()
{
	// TODO: 在此添加一次性构造代码
//m_pNum=2003js0001;
    m_pAge=20;
    m_pNum="";
    m_pName="";
    m_pSex="";
    m_pTel="";
    m_pAdd="";
	flag=0;
}

CstudentsDoc::~CstudentsDoc()
{
}

BOOL CstudentsDoc::OnNewDocument()
{
	if (!CDocument::OnNewDocument())
		return FALSE;

	// TODO: 在此添加重新初始化代码
	// (SDI 文档将重用该文档)

	return TRUE;
}




// CstudentsDoc 序列化

void CstudentsDoc::Serialize(CArchive& ar)
{
	if (ar.IsStoring())
	{
		// TODO: 在此添加存储代码
		ar << Number << flag;
	}
	else
	{
		// TODO: 在此添加加载代码
		ar>>Number >> flag;
	}
	m_ObArray.Serialize(ar);
}


// CstudentsDoc 诊断

#ifdef _DEBUG
void CstudentsDoc::AssertValid() const
{
	CDocument::AssertValid();
}

void CstudentsDoc::Dump(CDumpContext& dc) const
{
	CDocument::Dump(dc);
}

void CstudentsDoc::AddStu(CString pNum,int pAge,CString pName,CString pSex,CString pAdd,CString pTel)
{
	CStu *pStu=new CStu(pNum, pAge,pName, pSex,pAdd,pTel);
    m_ObArray.Add(pStu);
	//SetModifiedFlag();
}
CStu *CstudentsDoc::GetStu(int index)
{
	if(index<0||index > m_ObArray.GetUpperBound()) return 0;
	return(CStu *)m_ObArray.GetAt(index);
}
int CstudentsDoc::GetStuNumber()
{
	return m_ObArray.GetSize();
}
#endif //_DEBUG


// CDrawDoc 命令


void CstudentsDoc::OnOptionsAdd()
{
	// TODO: 在此添加命令处理程序代码
//	CAddDialog AddDialog;
//	AddDialog.m_pAge=m_pAge;
//	AddDialog.m_pNum=m_pNum;
//	AddDialog.m_pName=m_pName;
//	AddDialog.m_pSex=m_pSex;
//	AddDialog.m_pTel=m_pTel;
//	AddDialog.m_pAdd=m_pAdd;
//	if (AddDialog.DoModal()==IDOK)
//	{
//		m_pAge=AddDialog.m_pAge ;
//		m_pNum=AddDialog.m_pNum ;
//		m_pName=AddDialog.m_pName;
//		m_pSex=AddDialog.m_pSex;
//		m_pAdd=AddDialog.m_pAdd;
//		m_pTel=AddDialog.m_pTel;
//		AddStu(m_pNum,m_pAge,m_pName,m_pSex,m_pAdd,m_pTel);
		
//	}
}

void CstudentsDoc::OnUpdateOptionsAdd(CCmdUI *pCmdUI)
{
	// TODO: 在此添加命令更新用户界面处理程序代码
}







void CstudentsDoc::OnOptionsDel()
{

}

void CstudentsDoc::OnOptionsMody()
{
	// TODO: 在此添加命令处理程序代码
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -