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

📄 mydataedit.cpp

📁 一个学生考试成绩管理的半成品
💻 CPP
📖 第 1 页 / 共 3 页
字号:
		m_year.SetCurSel(-1);
		m_place.SetCurSel(-1);
		m_schoolname.SetCurSel(-1);
		m_classname.SetCurSel(-1);
		m_coursename.SetCurSel(-1);
		m_studentreadem.SetCurSel(-1);
		SetDlgItemText(IDC_TEACHERNAME,"");
		SetDlgItemText(IDC_STUDENTNAME,"");
		SetDlgItemText(IDC_GATHER,"");
	}
	*pResult = 0;
}

void CMyDataEdit::MyScorll(CString type,int row1)
{
	POSITION pos=m_datalist.GetFirstSelectedItemPosition();
	int row=-1;
	if(pos)
		row=m_datalist.GetNextSelectedItem(pos);
	CRect r;
	m_datalist.GetItemRect(0,&r,LVIR_BOUNDS);
	if(type=="start")
		m_datalist.Scroll(CSize(0,r.Height()*row));
	if(type=="set")
	{
		m_datalist.Scroll(CSize(0,-r.Height()*(1+row)));
		m_datalist.Scroll(CSize(0,r.Height()*(row1)));
	}
	if(type=="first")
	{
		for(int i=m_datalist.GetItemCount();i>=0;i--)
			m_datalist.Scroll(CSize(0,-r.Height()));
	}
	if(type=="last")
	{
		for(int i=0;i<=m_datalist.GetItemCount();i++)
			m_datalist.Scroll(CSize(0,r.Height()));
	}
	if(type=="next")
		m_datalist.Scroll(CSize(0,r.Height()));
	if(type=="prev")
		m_datalist.Scroll(CSize(0,-r.Height()));
}

void CMyDataEdit::StartView(void)
{
	m_pRecordset->Close();
	m_pRecordset=NULL;
	CString strSQL;
	strSQL="select * from dataedit";
	HRESULT hTRes;
	hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
	if (SUCCEEDED(hTRes))
	{
		hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
				((CScoreGatherApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
				adOpenDynamic,adLockPessimistic,adCmdText);
		int r=0;
		while(!(m_pRecordset->adoEOF))
		{
			m_datalist.InsertItem(r,NULL);
			m_datalist.SetItemText(r,0,p_MySetClass->GetString(m_pRecordset->GetCollect("my_year")));
			m_datalist.SetItemText(r,1,p_MySetClass->GetString(m_pRecordset->GetCollect("my_place")));
			m_datalist.SetItemText(r,2,p_MySetClass->GetString(m_pRecordset->GetCollect("my_school")));
			m_datalist.SetItemText(r,3,p_MySetClass->GetString(m_pRecordset->GetCollect("my_class")));
			m_datalist.SetItemText(r,4,p_MySetClass->GetString(m_pRecordset->GetCollect("my_course")));
			m_datalist.SetItemText(r,5,p_MySetClass->GetString(m_pRecordset->GetCollect("my_teacher")));
			m_datalist.SetItemText(r,6,p_MySetClass->GetString(m_pRecordset->GetCollect("my_student")));
			m_datalist.SetItemText(r,7,p_MySetClass->GetString(m_pRecordset->GetCollect("my_gather")));
			m_datalist.SetItemText(r,8,p_MySetClass->GetString(m_pRecordset->GetCollect("my_readem")));
			r++;
			if(!(m_pRecordset->adoEOF))
				m_pRecordset->MoveNext();
		}
		m_datalist.SetItem(r-1, 0, LVIF_STATE, NULL, 0, LVIS_SELECTED, LVIS_SELECTED, 0);
		Move(r-1);
		MyScorll("start",0);
	}
}
void CMyDataEdit::OnEnSetfocusTeachername()
{
	CString ctrl;
	GetDlgItemText(IDC_APPEND,ctrl);
	if(ctrl!="查  询")
		GotoDlgCtrl(GetDlgItem(IDC_STATIC));
}

BOOL CMyDataEdit::PreTranslateMessage(MSG* pMsg)
{
	m_tooltip.RelayEvent(pMsg);
	return CDialog::PreTranslateMessage(pMsg);
}

BOOL CMyDataEdit::OnEraseBkgnd(CDC* pDC)
{
	CBrush brush(RGB(250,220,250));
	CBrush* pOldBrush=pDC->SelectObject(&brush);
	CRect rcClip;
	pDC->GetClipBox(&rcClip);
	pDC->PatBlt(rcClip.left,rcClip.top,rcClip.Width(),rcClip.Height(),PATCOPY);
	pDC->SelectObject(pOldBrush);
	return TRUE;
}

HBRUSH CMyDataEdit::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
	if(nCtlColor!=CTLCOLOR_EDIT)
	{
		pDC->SetTextColor(RGB(40,20,255));
		pDC->SetBkMode(TRANSPARENT);
		HBRUSH B = CreateSolidBrush(RGB(250,220,250));
		return (HBRUSH) B;
	}
	else
		return CDialog::OnCtlColor(pDC, pWnd, nCtlColor); 
}

void CMyDataEdit::OnOK()
{
}

void CMyDataEdit::OnCancel()
{
}

void CMyDataEdit::OnCbnSelchangeStudentreadem()
{
	if(m_studentreadem.GetCurSel()>=0)
	{
		CString string;
		m_studentreadem.GetLBText(m_studentreadem.GetCurSel(),string);
		if(string=="违纪" || string=="缺考")
		{
			SetDlgItemInt(IDC_GATHER,0,1);
			m_gather.EnableWindow(0);
		}
		else
		{
			SetDlgItemText(IDC_GATHER,"");
			m_gather.EnableWindow(1);
		}
	}
}

void CMyDataEdit::OnCbnSelchangeYear()
{
	if(m_year.GetCurSel()>=0)
	{
		CString year;
		m_year.GetLBText(m_year.GetCurSel(),year);
		m_place.ResetContent();
		m_schoolname.ResetContent();
		m_classname.ResetContent();
		m_coursename.ResetContent();
		m_studentreadem.SetCurSel(-1);
		SetDlgItemText(IDC_TEACHERNAME,_T(""));
		SetDlgItemText(IDC_STUDENTNAME,_T(""));
		SetDlgItemText(IDC_GATHER,_T(""));
		CString strSQL="select * from schoolnumber";
		strSQL=strSQL+" where my_year='";
		strSQL=strSQL+year+"'";
		m_pRecordset->Close();
		m_pRecordset=NULL;
		HRESULT hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
				((CScoreGatherApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
				adOpenDynamic,adLockPessimistic,adCmdText);
			while(!(m_pRecordset->adoEOF))
			{
				CString string;
				string=p_MySetClass->GetString(m_pRecordset->GetCollect("my_placename"));
				if(m_place.FindString(0,string)==-1)
					m_place.AddString(string);
				string.Empty();
				if(!(m_pRecordset->adoEOF))
					m_pRecordset->MoveNext();
			}
		}
		strSQL="select * from yearcourse";
		strSQL=strSQL+" where my_year='";
		strSQL=strSQL+year+"'";
		m_pRecordset->Close();
		m_pRecordset=NULL;
		hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
				((CScoreGatherApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
				adOpenDynamic,adLockPessimistic,adCmdText);
			while(!(m_pRecordset->adoEOF))
			{
				CString string;
				string=p_MySetClass->GetString(m_pRecordset->GetCollect("my_coursename"));
				if(m_coursename.FindString(0,string)==-1)
					m_coursename.AddString(string);
				string.Empty();
				if(!(m_pRecordset->adoEOF))
					m_pRecordset->MoveNext();
			}
		}
	}
}

void CMyDataEdit::OnCbnSelchangePlace()
{
	if(m_place.GetCurSel()>=0 && m_year.GetCurSel()>=0)
	{
		CString place;
		m_place.GetLBText(m_place.GetCurSel(),place);
		CString year;
		m_year.GetLBText(m_year.GetCurSel(),year);
		m_schoolname.ResetContent();
		m_classname.ResetContent();
		m_coursename.SetCurSel(-1);
		m_studentreadem.SetCurSel(-1);
		SetDlgItemText(IDC_TEACHERNAME,_T(""));
		SetDlgItemText(IDC_STUDENTNAME,_T(""));
		SetDlgItemText(IDC_GATHER,_T(""));
		CString strSQL="select * from schoolnumber";
		strSQL=strSQL+" where my_year='";
		strSQL=strSQL+year+"'";
		strSQL=strSQL+" AND my_placename='";
		strSQL=strSQL+place+"'";
		m_pRecordset->Close();
		m_pRecordset=NULL;
		HRESULT hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
				((CScoreGatherApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
				adOpenDynamic,adLockPessimistic,adCmdText);
			while(!(m_pRecordset->adoEOF))
			{
				CString string;
				string=p_MySetClass->GetString(m_pRecordset->GetCollect("my_schoolname"));
				if(m_schoolname.FindString(0,string)==-1)
					m_schoolname.AddString(string);
				string.Empty();
				if(!(m_pRecordset->adoEOF))
					m_pRecordset->MoveNext();
			}
		}
	}
}

void CMyDataEdit::OnCbnSelchangeSchoolname()
{
	if(m_schoolname.GetCurSel()>=0 && m_place.GetCurSel()>=0 && m_year.GetCurSel()>=0)
	{
		CString school;
		m_schoolname.GetLBText(m_schoolname.GetCurSel(),school);
		CString place;
		m_place.GetLBText(m_place.GetCurSel(),place);
		CString year;
		m_year.GetLBText(m_year.GetCurSel(),year);
		m_classname.ResetContent();
		m_coursename.SetCurSel(-1);
		m_studentreadem.SetCurSel(-1);
		SetDlgItemText(IDC_TEACHERNAME,_T(""));
		SetDlgItemText(IDC_STUDENTNAME,_T(""));
		SetDlgItemText(IDC_GATHER,_T(""));
		CString strSQL="select * from schoolnumber";
		strSQL=strSQL+" where my_year='";
		strSQL=strSQL+year+"'";
		strSQL=strSQL+" AND my_placename='";
		strSQL=strSQL+place+"'";
		strSQL=strSQL+" AND my_schoolname='";
		strSQL=strSQL+school+"'";
		m_pRecordset->Close();
		m_pRecordset=NULL;
		HRESULT hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
				((CScoreGatherApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
				adOpenDynamic,adLockPessimistic,adCmdText);
			while(!(m_pRecordset->adoEOF))
			{
				CString string;
				string=p_MySetClass->GetString(m_pRecordset->GetCollect("my_gradeclassname"));
				if(m_schoolname.FindString(0,string)==-1)
					m_classname.AddString(string);
				string.Empty();
				if(!(m_pRecordset->adoEOF))
					m_pRecordset->MoveNext();
			}
		}
	}
}

void CMyDataEdit::OnCbnSelchangeClassname()
{
	m_coursename.SetCurSel(-1);
	m_studentreadem.SetCurSel(-1);
	SetDlgItemText(IDC_TEACHERNAME,_T(""));
	SetDlgItemText(IDC_STUDENTNAME,_T(""));
	SetDlgItemText(IDC_GATHER,_T(""));
}

void CMyDataEdit::OnCbnSelchangeCoursename()
{
	if(m_coursename.GetCurSel()>=0 && m_classname.GetCurSel()>=0 && m_schoolname.GetCurSel()>=0 && m_place.GetCurSel()>=0 && m_year.GetCurSel()>=0)
	{
		CString coursename;
		m_coursename.GetLBText(m_coursename.GetCurSel(),coursename);
		CString classname;
		m_classname.GetLBText(m_classname.GetCurSel(),classname);
		CString school;
		m_schoolname.GetLBText(m_schoolname.GetCurSel(),school);
		CString place;
		m_place.GetLBText(m_place.GetCurSel(),place);
		CString year;
		m_year.GetLBText(m_year.GetCurSel(),year);
		m_studentreadem.SetCurSel(-1);
		SetDlgItemText(IDC_TEACHERNAME,_T(""));
		SetDlgItemText(IDC_STUDENTNAME,_T(""));
		SetDlgItemText(IDC_GATHER,_T(""));
		CString strSQL="select * from courseteacher";
		strSQL=strSQL+" where my_year='";
		strSQL=strSQL+year+"'";
		strSQL=strSQL+" AND my_placename='";
		strSQL=strSQL+place+"'";
		strSQL=strSQL+" AND my_schoolname='";
		strSQL=strSQL+school+"'";
		strSQL=strSQL+" AND my_coursename='";
		strSQL=strSQL+coursename+"'";
		strSQL=strSQL+" AND my_classname='";
		strSQL=strSQL+classname+"'";
		m_pRecordset->Close();
		m_pRecordset=NULL;
		HRESULT hTRes = m_pRecordset.CreateInstance(_T("ADODB.Recordset"));
		if (SUCCEEDED(hTRes))
		{
			hTRes = m_pRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
				((CScoreGatherApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
				adOpenDynamic,adLockPessimistic,adCmdText);
			if(!(m_pRecordset->adoEOF))
			{
				CString string;
				string=p_MySetClass->GetString(m_pRecordset->GetCollect("my_teachername"));
				SetDlgItemText(IDC_TEACHERNAME,string);
			}
		}
	}
}

void CMyDataEdit::OnBnClickedNewview()
{
	m_datalist.DeleteAllItems();
	m_place.ResetContent();
	m_schoolname.ResetContent();
	m_classname.ResetContent();
	m_coursename.ResetContent();
	m_studentreadem.SetCurSel(-1);
	SetDlgItemText(IDC_TEACHERNAME,_T(""));
	SetDlgItemText(IDC_STUDENTNAME,_T(""));
	SetDlgItemText(IDC_GATHER,_T(""));
	StartView();
}

⌨️ 快捷键说明

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