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

📄 examview.cpp

📁 对学生信息的考试数据管理的数据库
💻 CPP
📖 第 1 页 / 共 2 页
字号:
{
	// 显示信息注销对话框
/*	CDelTeacher dlg;
	if (dlg.DoModal() != IDOK)
		return;

	// Recordset对象
	_RecordsetPtr pRecordset;
	
	try
	{
		// 创建Recordset对象
		pRecordset.CreateInstance(__uuidof(Recordset));
	
		// 打开指定的记录集,使用静态光标和开放式锁定方式
		CString sCmd = "SELECT * FROM 教师信息 WHERE 姓名 = '" + dlg.m_sName + "'";
		pRecordset->Open(_bstr_t(sCmd), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("打开记录集失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}

	try
	{
		// 删除当前记录
		pRecordset->Delete(adAffectCurrent);

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("删除记录失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}*/
}

void CExamView::OnAddStudent() 
{
	// Recordset对象
/*	_RecordsetPtr pRecordset;
	
	try
	{
		// 创建Recordset对象
		pRecordset.CreateInstance(__uuidof(Recordset));
	
		// 打开记录集,使用静态光标和开放式锁定方式
		pRecordset->Open(_bstr_t("SELECT * FROM 班级信息"), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("打开记录集失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}

	// 显示信息录入对话框
	CNewStudent	dlg;
	_variant_t vField;
	try
	{
		// 取得所有班级名称
		for (int i = 0; i < pRecordset->GetRecordCount(); i++)
		{
			vField = pRecordset->GetCollect(long(2));
			dlg.m_sClass[i] = vField.bstrVal;
			vField = pRecordset->GetCollect(long(1));
			dlg.m_sClass[i] += vField.bstrVal;

			dlg.m_nClassNum++;
			pRecordset->MoveNext();
		}

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("访问记录字段失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
	}

	// 显示对话框
	if (dlg.DoModal() != IDOK)
		return;

	try
	{
		// 打开指定的记录集,使用静态光标和开放式锁定方式
		CString sCmd = "SELECT * FROM 班级信息 WHERE 班级名称 = '" + dlg.m_sClass[0].Right(4) + "' AND 年级 = '" + dlg.m_sClass[0].Left(6) + "'";
		pRecordset->Open(_bstr_t(sCmd), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);

		// 得到班级ID索引
		vField = pRecordset->GetCollect(long(0));

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("访问记录字段失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
	}

	try
	{
		// 打开记录集,使用静态光标和开放式锁定方式
		pRecordset->Open(_bstr_t("SELECT * FROM 学生信息"), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("打开记录集失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}

	try
	{
		// 添加新记录
		pRecordset->AddNew();
		CString sTemp;
		sTemp.Format("%d", dlg.m_nStudentID);
		pRecordset->PutCollect("学号", _variant_t(sTemp));
		pRecordset->PutCollect("姓名", _variant_t(dlg.m_sName));
		pRecordset->PutCollect("班级ID", vField);
		sTemp.Format("%d", dlg.m_nSex);
		pRecordset->PutCollect("性别", _variant_t(sTemp));
		pRecordset->PutCollect("出生年月", _variant_t(dlg.m_sBirthday));

		// 更新记录集
		pRecordset->Update();

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("添加记录失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}*/
}

void CExamView::OnDeleteStudent() 
{
/*	// 显示信息注销对话框
	CDelStudent dlg;
	if (dlg.DoModal() != IDOK)
		return;
	
	// Recordset对象
	_RecordsetPtr pRecordset;
	
	try
	{
		// 创建Recordset对象
		pRecordset.CreateInstance(__uuidof(Recordset));
	
		// 打开指定的记录集,使用静态光标和开放式锁定方式
		CString sCmd = "SELECT * FROM 学生信息 WHERE 学号 = '" + dlg.m_sStudentID + "'";
		pRecordset->Open(_bstr_t(sCmd), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("打开记录集失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}

	try
	{
		// 删除当前记录
		pRecordset->Delete(adAffectCurrent);

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("删除记录失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}*/
}

void CExamView::OnAddClass() 
{
/*	// Recordset对象
	_RecordsetPtr pRecordset;
	
	try
	{
		// 创建Recordset对象
		pRecordset.CreateInstance(__uuidof(Recordset));
	
		// 打开记录集,使用静态光标和开放式锁定方式
		pRecordset->Open(_bstr_t("SELECT * FROM 教师信息"), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("打开记录集失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}

	// 显示信息录入对话框
	CNewClass dlg;
	_variant_t vField;
	try
	{
		// 取得所有教师姓名
		for (int i = 0; i < pRecordset->GetRecordCount(); i++)
		{
			vField = pRecordset->GetCollect(long(1));
			dlg.m_sTeacher[i] = vField.bstrVal;
			dlg.m_nTeacherNum++;
			pRecordset->MoveNext();
		}

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("访问记录字段失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
	}

	// 显示对话框
	if (dlg.DoModal() != IDOK)
		return;

	try
	{
		// 打开指定的记录集,使用静态光标和开放式锁定方式
		CString sCmd = "SELECT * FROM 教师信息 WHERE 姓名 = '" + dlg.m_sTeacher[0] + "'";
		pRecordset->Open(_bstr_t(sCmd), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);

		// 得到教师ID索引
		vField = pRecordset->GetCollect(long(0));

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("访问记录字段失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
	}

	try
	{
		// 打开记录集,使用静态光标和开放式锁定方式
		pRecordset->Open(_bstr_t("SELECT * FROM 班级信息"), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("打开记录集失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}

	try
	{
		// 添加新记录
		pRecordset->AddNew();
		pRecordset->PutCollect("班级名称", _variant_t(dlg.m_sClass));
		pRecordset->PutCollect("年级", _variant_t(dlg.m_sGrade));
		pRecordset->PutCollect("教师ID", vField);
		pRecordset->PutCollect("教室", _variant_t(dlg.m_sRoom));

		// 更新记录集
		pRecordset->Update();

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("添加记录失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}*/
}

void CExamView::OnDeleteClass() 
{
/*	// 显示信息录入对话框
	CDelClass dlg;
	if (dlg.DoModal() != IDOK)
		return;

	// Recordset对象
	_RecordsetPtr pRecordset;
	
	try
	{
		// 创建Recordset对象
		pRecordset.CreateInstance(__uuidof(Recordset));
	
		// 打开指定的记录集,使用静态光标和开放式锁定方式
		CString sCmd = "SELECT * FROM 班级信息 WHERE 班级名称 = '" + dlg.m_sClass + "班' AND 年级 = '" + dlg.m_sGrade + "年级'";
		pRecordset->Open(_bstr_t(sCmd), 
						 _variant_t((IDispatch*)m_pConnection, true), 
						 adOpenStatic,
						 adLockOptimistic,
						 adCmdText);
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("打开记录集失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}

	try
	{
		// 删除当前记录
		pRecordset->Delete(adAffectCurrent);

		// 关闭记录集
		pRecordset->Close();
	}
	catch (_com_error e)
	{
		// 显示错误信息
		CString errormessage;
		errormessage.Format("删除记录失败!\r\n错误信息:%s", e.ErrorMessage());
		AfxMessageBox(errormessage);
		return;
	}*/
}

void CExamView::OnInputMark() 
{
	if (m_nCurrPage != 0)
	{
		DWORD flag = AW_SLIDE | AW_HOR_NEGATIVE;
		::AnimateWindow(m_arhwndPage[0], 300, flag);
		::ShowWindow(m_arhwndPage[m_nCurrPage], SW_HIDE);
	}
	m_nCurrPage = 0;
}

void CExamView::OnSortbymark() 
{
	if (m_nCurrPage > 1)
	{
		DWORD flag = AW_SLIDE | AW_HOR_NEGATIVE;
		::AnimateWindow(m_arhwndPage[1], 300, flag);
		::ShowWindow(m_arhwndPage[m_nCurrPage], SW_HIDE);
	}
	if (m_nCurrPage < 1)
	{
		DWORD flag = AW_SLIDE | AW_HOR_POSITIVE;
		::AnimateWindow(m_arhwndPage[1], 300, flag);
		::ShowWindow(m_arhwndPage[m_nCurrPage], SW_HIDE);
	}

	m_nCurrPage = 1;
}

void CExamView::OnQuery() 
{
	if (m_nCurrPage > 2)
	{
		DWORD flag = AW_SLIDE | AW_HOR_NEGATIVE;
		::AnimateWindow(m_arhwndPage[2], 300, flag);
		::ShowWindow(m_arhwndPage[m_nCurrPage], SW_HIDE);
	}
	if (m_nCurrPage < 2)
	{
		DWORD flag = AW_SLIDE | AW_HOR_POSITIVE;
		::AnimateWindow(m_arhwndPage[2], 300, flag);
		::ShowWindow(m_arhwndPage[m_nCurrPage], SW_HIDE);
	}
	m_nCurrPage = 2;
}

void CExamView::OnCollect() 
{
	DWORD flag = AW_SLIDE | AW_HOR_POSITIVE;
	::AnimateWindow(m_arhwndPage[3], 300, flag);
	::ShowWindow(m_arhwndPage[m_nCurrPage], SW_HIDE);
	m_nCurrPage = 3;
}

⌨️ 快捷键说明

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