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

📄 scorequerydlg.cpp

📁 一个由MFC做的学生信息管理系统
💻 CPP
字号:
// ScoreQueryDlg.cpp : implementation file
//

#include "stdafx.h"
#include "SSF.h"
#include "ScoreQueryDlg.h"
#include"ScoreSet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CScoreQueryDlg dialog


CScoreQueryDlg::CScoreQueryDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CScoreQueryDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CScoreQueryDlg)
	m_strClass = _T("");
	m_strName = _T("");
	//}}AFX_DATA_INIT
}


void CScoreQueryDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CScoreQueryDlg)
	DDX_Control(pDX, 1003, m_ctrStuList);
	DDX_Control(pDX, IDC_LIST3, m_ctrScoreList);
	DDX_CBString(pDX, IDC_COMBO1, m_strClass);
	DDX_Text(pDX, IDC_EDITSname, m_strName);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CScoreQueryDlg, CDialog)
	//{{AFX_MSG_MAP(CScoreQueryDlg)
	ON_NOTIFY(NM_CLICK, 1003, OnClick1003)
	ON_BN_CLICKED(IDC_BUTTONSearch, OnBUTTONSearch)
	ON_BN_CLICKED(IDC_BUTTONList, OnBUTTONList)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CScoreQueryDlg message handlers

BOOL CScoreQueryDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	m_ctrScoreList.InsertColumn(0,"时间段");
    m_ctrScoreList.InsertColumn(1,"科目");
    m_ctrScoreList.InsertColumn(2,"考试类型");
    m_ctrScoreList.InsertColumn(3,"成绩");
    m_ctrScoreList.InsertColumn(4,"补考成绩");
    m_ctrStuList.InsertColumn(0,"学号");
    m_ctrStuList.InsertColumn(1,"姓名");

	m_ctrScoreList.SetColumnWidth(0,100);
    m_ctrScoreList.SetColumnWidth(1,100);
    m_ctrScoreList.SetColumnWidth(2,100);
    m_ctrScoreList.SetColumnWidth(3,100);
	m_ctrScoreList.SetColumnWidth(4,100);
    m_ctrStuList.SetColumnWidth(0,100);
    m_ctrStuList.SetColumnWidth(1,100);

	m_ctrScoreList.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
   
    	m_ctrStuList.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
	return TRUE;
 // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CScoreQueryDlg::OnClick1003(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	// TODO: Add your control notification handler code here
	CScoreSet m_ScoreSet; 
	// TODO: Add your control notification handler code here
	CString strSQL;
	UpdateData(TRUE);
	int i=m_ctrStuList.GetSelectionMark();
    strSQL.Format("select * from score where code='%s'",m_ctrStuList.GetItemText(i,0));
   if(!m_ScoreSet.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
	{
		MessageBox("打开数据库失败!","数据库错误",MB_OK);
		return;
	}
	//m_strCode=m_recordset.m_code;
	m_strName=m_ScoreSet.m_name;
   // m_strInfo=m_recordset.m_brief;
	//m_strDepartment=m_recordset.m_department;
	m_ScoreSet.Close();
	UpdateData(FALSE);
	//m_bntSave.EnableWindow(FALSE);
//	m_bntNew.EnableWindow();
	//m_bntDelete.EnableWindow();
//	m_bntModify.EnableWindow();
	*pResult = 0;
}

void CScoreQueryDlg::OnBUTTONSearch() 
{
	// TODO: Add your control notification handler code here
	CScoreSet m_ScoreSet;
	// TODO: Add your control notification handler code here
    m_ctrScoreList.DeleteAllItems();
UpdateData(true);
    if(m_strName.IsEmpty())
	{
	   AfxMessageBox("请输入学生姓名!");
		   return;
	}
	CString strSQL;
	strSQL.Format("select *from score where name like '%s'",m_strName);
	if(!m_ScoreSet.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
	{
	    MessageBox("打开数据库失败!","数据库失误",MB_OK);
		return;
	}
	int i=0;
	while(!m_ScoreSet.IsEOF())
	{
	   m_ctrScoreList.InsertItem(i,m_ScoreSet.m_time);
	   m_ctrScoreList.SetItemText(i,1,m_ScoreSet.m_subject);
 m_ctrScoreList.SetItemText(i,2,m_ScoreSet.m_type);
 m_ctrScoreList.SetItemText(i,3,m_ScoreSet.m_score);
 m_ctrScoreList.SetItemText(i,4,m_ScoreSet.m_makeup_score);
	   i++;
	   m_ScoreSet.MoveNext();
	}
	m_ScoreSet.Close();
	m_ctrStuList.SetRedraw(true);
}

void CScoreQueryDlg::OnBUTTONList() 
{
	// TODO: Add your control notification handler code here
	 CScoreSet m_ScoreSet;
	// TODO: Add your control notification handler code here
	UpdateData();
	if(m_strClass.IsEmpty())
	{
	   AfxMessageBox("请选这班级!");
	   return;
	}
	CString strSQL;
	m_ctrStuList.DeleteAllItems();
	//m_ctrStuList.SetRedraw(false);
	UpdateData(true);
	strSQL.Format("select * from score where class='%s'",m_strClass);
	if(!m_ScoreSet.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
	{
	    MessageBox("打开数据库失败!","数据库失误",MB_OK);
		return;
	}
	int i=0;
	while(!m_ScoreSet.IsEOF())
	{
	   m_ctrStuList.InsertItem(i,m_ScoreSet.m_code);
	   m_ctrStuList.SetItemText(i,1,m_ScoreSet.m_name);
	   i++;
	   m_ScoreSet.MoveNext();
	}
	m_ScoreSet.Close();
	//m_ctrStuList.SetRedraw(true);
}

⌨️ 快捷键说明

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