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

📄 classmqdlg.cpp

📁 这是一个学生管理系统 包含学生基本信息 选课信息 宿舍信息 教师信息 课程信息 班机信息 教师信息等录入 查询 修改删除等强大功能
💻 CPP
字号:
// ClassMQdlg.cpp : implementation file
//

#include "stdafx.h"
#include "Student.h"
#include "ClassMQdlg.h"

#include"CourseSet.h"
#include"StuCourseSet.h"

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

/////////////////////////////////////////////////////////////////////////////
// CClassMQdlg dialog


CClassMQdlg::CClassMQdlg(CWnd* pParent /*=NULL*/)
	: CDialog(CClassMQdlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CClassMQdlg)
	m_class_no = _T("");
	m_name = _T("");
	//}}AFX_DATA_INIT
}


void CClassMQdlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CClassMQdlg)
	DDX_Control(pDX, IDC_LIST_STUQ, m_stuQery_List);
	DDX_Text(pDX, IDC_EDIT_CLASS_NO, m_class_no);
	DDV_MaxChars(pDX, m_class_no, 4);
	DDX_Text(pDX, IDC_EDIT_NAME, m_name);
	DDV_MaxChars(pDX, m_name, 40);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CClassMQdlg, CDialog)
	//{{AFX_MSG_MAP(CClassMQdlg)
	ON_BN_CLICKED(IDC_BTN_PERSON, OnBtnPerson)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CClassMQdlg message handlers

BOOL CClassMQdlg::OnInitDialog() {
	CDialog::OnInitDialog();
	m_stuQery_List.InsertColumn(0,"课程号");

	m_stuQery_List.InsertColumn(1,"课程类别");
	m_stuQery_List.InsertColumn(2,"课程名称");
	m_stuQery_List.InsertColumn(3,"课程简介");
    m_stuQery_List.InsertColumn(4,"学分");
	m_stuQery_List.InsertColumn(5,"平均成绩");
	m_stuQery_List.InsertColumn(6,"选课人数");
	

	m_stuQery_List.SetColumnWidth(0,80);
	m_stuQery_List.SetColumnWidth(1,80);
	m_stuQery_List.SetColumnWidth(2,80);
    m_stuQery_List.SetColumnWidth(3,140);
	m_stuQery_List.SetColumnWidth(4,60);
	m_stuQery_List.SetColumnWidth(5,60);
	m_stuQery_List.SetColumnWidth(6,60);

	m_stuQery_List.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 CClassMQdlg::OnBtnPerson() 
{
	//以下是主题查询:某课程的所有信息,应放在CourseMQdlg.cpp中


	UpdateData();

    CCourseSet pcour;
	CStuCourseSet pstucourse;
	CCourseSet pcourse;

    CString strSQL1,strSQL2;
	try{//此处用m_class_no代表课程号,当类改变时,应相应的改为那个类向导中的名字
		if(!m_class_no.IsEmpty())
		    strSQL1="select * from course where pcour.m_Course_no=m_class_no";

		else{
			if(m_name.IsEmpty()){
				AfxMessageBox("请输入要查询课程名称或编号!");
				return;
			}
			strSQL1="select * from course where pcour.m_Name=m_name";
		
		}
	//AfxMessageBox("打开数据库!");
	if(!pcour.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL1))
	{
		 AfxMessageBox("打开数据库失败!");
		return;
	}
	
	m_stuQery_List.DeleteAllItems();//将表中原有的记录全部删掉
	int i=0;
	while(!pcour.IsEOF())
	{   char * buffer;CString str;
	    strSQL2="select AVG(Score),COUNT(Stu_no) from stu_course where pstucourse.m_Course_no=pcour.m_Course_no";
        if(!pstucourse.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL2))
		{
		     AfxMessageBox("打开数据库失败!");
		     return;
		}
	    m_stuQery_List.InsertItem(i,pcour.m_Course_no);
		m_stuQery_List.SetItemText(i,1,pcour.m_Kind);
		m_stuQery_List.SetItemText(i,2,pcour.m_Name);
		m_stuQery_List.SetItemText(i,3,pcour.m_Introduction);
		str.Format("%s",pcour.m_Ctedit);
		m_stuQery_List.SetItemText(i,4,str);
		//str.Format("%s",AVG(pstucourse.m_Score));/////////***************//////////
		m_stuQery_List.SetItemText(i,5,str);
		//str.Format("%s",COUNT(pstucourse.m_Stu_no));/////////***************//////////
		m_stuQery_List.SetItemText(i,6,str);
		i++;
		pstucourse.Close();
		pcour.MoveNext();
	}
	
	pcour.Close();
	}
	catch(CDBException *pe){
		AfxMessageBox(pe->m_strError);
		pe->Delete();
	}
	

	
}

void CClassMQdlg::OnCancel() 
{
	// TODO: Add extra cleanup here
	
	CDialog::OnCancel();
}

⌨️ 快捷键说明

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