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

📄 admindlg.cpp

📁 简单的考试管理系统程序的数据库是用的ODBC Acess驱动的数据源,使用前要在系统中添加4个系统数据源.下面以添加user数据源为例说明一下添加方法:控制面板-->管理工具-->数据源ODBC选择
💻 CPP
字号:
// AdminDlg.cpp : 实现文件
//

#include "stdafx.h"
#include "DBLogin.h"
#include "AdminDlg.h"
#include "test.h"
#include ".\admindlg.h"


// AdminDlg 对话框

IMPLEMENT_DYNAMIC(AdminDlg, CDialog)
AdminDlg::AdminDlg(CWnd* pParent /*=NULL*/)
	: CDialog(AdminDlg::IDD, pParent)
	, m_Score(0)
	, m_QUA(_T(""))
	, m_Q_A(_T(""))
	, m_Q_B(_T(""))
	, m_Q_C(_T(""))
	, m_Q_D(_T(""))
{
	pDB = new CDatabase();
	try{
		if(!pDB->OpenEx("DSN=test"))
			AfxMessageBox("Error,Can't open database");
		pSet = new Ctest(pDB);
		pSet->Open(CRecordset::dynaset);
	}catch(CException *e){
		e->ReportError();
	}
	SetTest();
}
void AdminDlg::SetTest()
{
	this->m_Score = pSet->m_Score;
	this->m_QUA = pSet->m_Question;
	this->m_Q_A = pSet->m_A;
	this->m_Q_B = pSet->m_B;
	this->m_Q_C = pSet->m_C;
	this->m_Q_D = pSet->m_D;
	//UpdateData(false);
} 

AdminDlg::~AdminDlg()
{
	if(pDB->IsOpen())
		pDB->Close();
	if(pSet->IsOpen())
		pSet->Close();
	delete pDB;
	delete pSet;
}

void AdminDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Text(pDX, IDC_RScore, m_Score);
	DDX_Text(pDX, IDC_QText, m_QUA);
	DDX_Text(pDX, IDC_QA, m_Q_A);
	DDX_Text(pDX, IDC_Q_B, m_Q_B);
	DDX_Text(pDX, IDC_Q_C, m_Q_C);
	DDX_Text(pDX, IDC_Q_D, m_Q_D);
}


BEGIN_MESSAGE_MAP(AdminDlg, CDialog)
	ON_BN_CLICKED(ID_FIRST, OnBnClickedFirst)
	ON_BN_CLICKED(ID_PREV, OnBnClickedPrev)
	ON_BN_CLICKED(ID_NEXT, OnBnClickedNext)
	ON_BN_CLICKED(ID_END, OnBnClickedEnd)
	ON_BN_CLICKED(IDOK, OnBnClickedOk)
END_MESSAGE_MAP()


// AdminDlg 消息处理程序

void AdminDlg::OnBnClickedFirst()
{
	// TODO: 在此添加控件通知处理程序代码
	pSet->MoveFirst();
	this->SetTest();
	UpdateData(false);
}

void AdminDlg::OnBnClickedPrev()
{
	// TODO: 在此添加控件通知处理程序代码
	pSet->MovePrev();
	this->SetTest();
	UpdateData(false);
	if(pSet->IsBOF())
		pSet->MoveFirst();
}

void AdminDlg::OnBnClickedNext()
{
	// TODO: 在此添加控件通知处理程序代码
	pSet->MoveNext();
	this->SetTest();
	UpdateData(false);
	if(pSet->IsEOF())
		pSet->MoveLast();

}

void AdminDlg::OnBnClickedEnd()
{
	pSet->MoveLast();
	this->SetTest();
	UpdateData(false);
	// TODO: 在此添加控件通知处理程序代码
}

void AdminDlg::OnBnClickedOk()
{
	// TODO: 在此添加控件通知处理程序代码
	//OnOK();
	if(pSet->CanUpdate())
	{
		UpdateData(true);
		pSet->Edit();
		pSet->m_Score = this->m_Score;
		pSet->Update();
		AfxMessageBox("更改分值成功");
	}else
		AfxMessageBox("更改分值出错");
}

⌨️ 快捷键说明

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