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

📄 stumoreview.cpp

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

#include "stdafx.h"
#include "biyesheji.h"
#include "stumoreView.h"
#include "BYXUEHAO.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CstumoreView

IMPLEMENT_DYNCREATE(CstumoreView, CRecordView)

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

CstumoreView::~CstumoreView()
{
	if (m_pSet)
		delete m_pSet;
}

void CstumoreView::DoDataExchange(CDataExchange* pDX)
{
	CRecordView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CstumoreView)
	DDX_Control(pDX, IDC_xh2, m_objname);
	DDX_FieldText(pDX, IDC_xh, m_pSet->m_studentid, m_pSet);
	DDX_FieldText(pDX, IDC_fq, m_pSet->m_fathername, m_pSet);
	DDX_FieldText(pDX, IDC_ht, m_pSet->m_htelephone, m_pSet);
	DDX_FieldText(pDX, IDC_jj, m_pSet->m_mecit, m_pSet);
	DDX_FieldText(pDX, IDC_mq, m_pSet->m_mothername, m_pSet);
	DDX_FieldText(pDX, IDC_mt, m_pSet->m_mtelephone, m_pSet);
	DDX_FieldText(pDX, IDC_sy, m_pSet->m_shengyuan, m_pSet);
	DDX_FieldText(pDX, IDC_jz, m_pSet->m_haddress, m_pSet);
	DDX_FieldText(pDX, IDC_yb, m_pSet->m_youbian, m_pSet);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CstumoreView, CRecordView)
	//{{AFX_MSG_MAP(CstumoreView)
	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
	ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
	ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
	ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CstumoreView diagnostics

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

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

/////////////////////////////////////////////////////////////////////////////
// CstumoreView message handlers

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

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

	return m_pSet;
}

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

void CstumoreView::OnInitialUpdate()
{
	BeginWaitCursor();
	GetRecordset();
	CRecordView::OnInitialUpdate();
	m_pSetstu=new CstubasicSet(NULL);
	m_pSetstu->Open();
	CString stv;

	m_pSetstu->MoveFirst();
	stv=m_pSetstu->m_name;
	
	m_objname.SetWindowText(stv);
	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 CstumoreView::OnButton1() 
{
	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 CstumoreView::OnButton2() 
{
	m_pSet->Edit();//使当前记录进入编辑状态
		UpdateData(true);//将窗体中显示的数据存入记录集
		if (m_pSet->CanUpdate())
		{
			m_pSet->Update();//将记录集的更新返回数据库
		}
		AfxMessageBox("成功保存数据!");
	
}

void CstumoreView::OnButton3() 
{
		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 CstumoreView::OnButton4() 
{
	 m_pSet->MoveFirst();
	 CBYXUEHAO dlg;
	 int result=dlg.DoModal();
	 long xue1=0;
	 xue1=m_pSet->m_studentid;
	 UpdateData();
	 if(result=IDOK)
	 {
		  if(dlg.m_cbyxuehao==xue1)
		  {
				 m_pSet->MoveFirst();
				 UpdateData(false);
		  }
		  else
		  {
         while(m_pSet->IsEOF()==0 )
		 {
		    
             if(m_pSet->m_studentid==dlg.m_cbyxuehao)
			 {
             UpdateData(false);
	         m_pSet->MoveNext();
			 }
	         else
			 {
		     m_pSet->MoveNext();
			 }
			 
		 }
			  m_pSet->MovePrev();
		  } 
		   //UpdateData(false);
		   m_pSetstu->MoveFirst();
		   while(m_pSetstu->IsEOF()==0)
		   {
			   if(m_pSetstu->m_xuehao==dlg.m_cbyxuehao)
			   { 
				   CString sta;
				   sta=m_pSetstu->m_name;
				   m_objname.SetWindowText(sta);
				   UpdateData(false);
                   m_pSetstu->MoveNext();
			   }
			     else
			 {
		     m_pSetstu->MoveNext();
			 }
		   }
	 }
		 	 	
}

⌨️ 快捷键说明

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