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

📄 couview.cpp

📁 学籍管理系统 实现接单的学籍管理功能 主要是针对高中的
💻 CPP
字号:
// couView.cpp : implementation file
//

#include "stdafx.h"
#include "biyesheji.h"
#include "couView.h"
#include "BYXUEHAO.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CcouView

IMPLEMENT_DYNCREATE(CcouView, CRecordView)

CcouView::CcouView()
	: CRecordView(CcouView::IDD)
{
	//{{AFX_DATA_INIT(CcouView)
	m_pSet = NULL;
	//}}AFX_DATA_INIT
}

CcouView::~CcouView()
{
		((CBiyeshejiApp*)AfxGetApp())->m_couviews=0;//启用菜单 允许打开新窗口
	if (m_pSet)
		delete m_pSet;
}

void CcouView::DoDataExchange(CDataExchange* pDX)
{
	CRecordView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CcouView)
	DDX_FieldText(pDX, IDC_EDIT2, m_pSet->m_tchname, m_pSet);
	DDX_FieldText(pDX, IDC_EDIT3, m_pSet->m_couname, m_pSet);
	DDX_FieldText(pDX, IDC_EDIT1, m_pSet->m_couID, m_pSet);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CcouView, CRecordView)
	//{{AFX_MSG_MAP(CcouView)
	ON_BN_CLICKED(IDC_ADD, OnAdd)
	ON_BN_CLICKED(IDC_XIUGAI, OnXiugai)
	ON_BN_CLICKED(IDC_SHANCHU, OnShanchu)
	ON_BN_CLICKED(IDC_CHA, OnCha)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CcouView diagnostics

#ifdef _DEBUG
void CcouView::AssertValid() const
{
	CRecordView::AssertValid();
}

void CcouView::Dump(CDumpContext& dc) const
{
	CRecordView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CcouView message handlers

CRecordset* CcouView::OnGetRecordset()
{
	if (m_pSet != NULL)
		return m_pSet;

	m_pSet = new CcouSet(NULL);
	m_pSet->Open();

	return m_pSet;
}

CcouSet* CcouView::GetRecordset()
{
	CcouSet* pData = (CcouSet*) OnGetRecordset();
	ASSERT(pData == NULL || pData->IsKindOf(RUNTIME_CLASS(CcouSet)));
	return pData;
}

void CcouView::OnInitialUpdate()
{
	BeginWaitCursor();
	GetRecordset();
	CRecordView::OnInitialUpdate();
	if (m_pSet->IsOpen())
	{
		CString strTitle = m_pSet->m_pDatabase->GetDatabaseName();
		CString strTable = m_pSet->GetTableName();
		if (!strTable.IsEmpty())
			strTitle += _T(":") + strTable;
		GetDocument()->SetTitle(strTitle);
	}
	EndWaitCursor();
}

void CcouView::OnAdd() 
{
try
	{
		CString str;
		m_pSet->AddNew();
     	UpdateData(true);//用窗体数据更新记录集
	//	CString str;
     	
		if (m_pSet->CanUpdate())  
		{
			m_pSet->Update();//将记录集更新返回数据库
		}
		m_pSet->MoveLast();
			//设置记录信息成员变量
		UpdateData(false);		//刷新窗体
		AfxMessageBox("成功添加记录!");
	}
	catch(CDBException* e)
	{
		m_pSet->CancelUpdate();//撤销引起错误的操作		
		AfxMessageBox(e->m_strError);//显示错误信息
		e->Delete();//删除错误对象
	}
	
}

void CcouView::OnXiugai() 
{
     	m_pSet->Edit();//使当前记录进入编辑状态
		UpdateData(true);//将窗体中显示的数据存入记录集
		CString str;
		if (m_pSet->CanUpdate())
		{
			m_pSet->Update();//将记录集的更新返回数据库
		}
		AfxMessageBox("成功保存数据!");
	
}

void CcouView::OnShanchu() 
{
		try {
			m_pSet->Delete();//删除当前记录
		}
	    	catch(CDBException* e) {
			m_pSet->CancelUpdate();//撤销引起错误的操作
			//如果删除操作发生错误,则显示错误信息
			AfxMessageBox(e->m_strError);//显示错误信息
			e->Delete();//删除错误对象
			m_pSet->MoveFirst(); //使第一条记录成为当前记录
		
			UpdateData(false);//刷新窗口		
		}		
		if (m_pSet->IsEOF()) {		
			//如果删除的是最后一条记录,则使前一条记录成为当前记录
			m_pSet->MovePrev();
		}
		else {
			m_pSet->MoveNext();//使下一条记录成为当前记录			
		}
	
}

void CcouView::OnCha() 
{
     m_pSet->MoveFirst();
	 CBYXUEHAO dlg;
	 int result=dlg.DoModal();
	 UpdateData();
	 if(result=IDOK)
	 {
         /*while(m_pSet->IsEOF()==0 )
		{
             if(m_pSet->m_couID==dlg.m_cbyxuehao)
			 {
             UpdateData(false);
	         m_pSet->MoveNext();
			 }
	         else
			 {
		     m_pSet->MoveNext();
			 }

		  } 
       m_pSet->MovePrev();*/
		 	while(m_pSet->m_couID!=dlg.m_cbyxuehao)
	{
           m_pSet->MoveNext();
	}
          UpdateData(false);
	 }
}

⌨️ 快捷键说明

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