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

📄 stumqdlg.cpp

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

#include "stdafx.h"
#include "Student.h"
#include "StuMQdlg.h"

#include "StudentSet.h"
#include "StuCourseSet.h"
#include "DormSet.h"

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

/////////////////////////////////////////////////////////////////////////////
// CStuMQdlg dialog


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


void CStuMQdlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CStuMQdlg)
	DDX_Control(pDX, IDC_LIST_STUQ, m_stuQery_List);
	DDX_Text(pDX, IDC_EDIT_NO, m_no);
	DDV_MaxChars(pDX, m_no, 8);
	DDX_Text(pDX, IDC_EDIT_NAME, m_name);
	DDV_MaxChars(pDX, m_name, 40);
	//}}AFX_DATA_MAP
}


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

/////////////////////////////////////////////////////////////////////////////
// CStuMQdlg message handlers

void CStuMQdlg::OnBtnPerson() 
{
	// TODO: Add your control notification handler code here
    CStudentSet pstu;
    CStuCourseSet pstucourse;
	CDormSet pdorm;
	try{

	CString strSQL1,strSQL2,strSQL3;
	if(!m_no.IsEmpty()){
	    strSQL1="select * from student where pstu.m_Stu_no=m_no";
		//strSQL2="select * from stu_course where pstucourse.m_Stu_no=m_no";
        //strSQL3="select * from dormitory where pdorm.m_Dorm_no=(select Dorm_no from student where pstu.Dorm_no=m_no)";
	}
	else if(m_name.IsEmpty()){
		AfxMessageBox("请输入所要查询的学生的学号或姓名!");return;
	}
        strSQL1="select * from student where pstu.m_Name=m_name";
		//
	//AfxMessageBox("打开数据库!");
	if(!pstu.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL1))
	{
		 AfxMessageBox("打开数据库失败!");
		return;
	}
	m_stuQery_List.DeleteAllItems();//将表中原有的记录全部删掉
	int i=0;
	CString str;
	while(!pstu.IsEOF())
	{
		strSQL2="select * from stu_course where pstucourse.m_Stu_no=pstu.m_Stu_no";
        strSQL3="select * from dormitory where pdorm.m_Dorm_no=pstu.m_Dorm";
        if(!pstucourse.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL2)){ 
			AfxMessageBox("打开数据库失败!");
		return;
		}
	   if(!pdorm.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL3)){ 
			AfxMessageBox("打开数据库失败!");
		return;
		}
	   //插入基本信息的内容
	    m_stuQery_List.InsertItem(i,pstu.m_Stu_no);
		m_stuQery_List.SetItemText(i,1,pstu.m_Name);
		m_stuQery_List.SetItemText(i,2,pstu.m_Nation);
		m_stuQery_List.SetItemText(i,3,pstu.m_Sex);
		str.Format("%s",pstu.m_Birth);
		m_stuQery_List.SetItemText(i,4,str);
		m_stuQery_List.SetItemText(i,5,pstu.m_Polity);
		m_stuQery_List.SetItemText(i,6,pstu.m_Scoure);
		str.Format("%s",pstu.m_Score);
		m_stuQery_List.SetItemText(i,7,str);
		m_stuQery_List.SetItemText(i,8,pstu.m_Dom_no);
		m_stuQery_List.SetItemText(i,9,pstu.m_Home_phone);
		m_stuQery_List.SetItemText(i,10,pstu.m_Address);
		m_stuQery_List.SetItemText(i,11,pstu.m_Content);
		//插入住宿信息的内容
	    m_stuQery_List.SetItemText(i,12,pdorm.m_Build_no);
		m_stuQery_List.SetItemText(i,13,pdorm.m_Apartment_no);
		
		str.Format("%s",pdorm.m_Stu_num);
		
		m_stuQery_List.SetItemText(i,14,str);
		m_stuQery_List.SetItemText(i,15,pdorm.m_Manager);
		m_stuQery_List.SetItemText(i,16,pdorm.m_Phone);
		m_stuQery_List.SetItemText(i,17,pdorm.m_Class_no);
		//插入选课信息表,默认每人可以选三门课
		int j=0;
		while(!pstucourse.IsEOF()){
			m_stuQery_List.SetItemText(i,18+2*j,pstucourse.m_Course_no);
		   	
			str.Format("%s",pstucourse.m_Score);
			m_stuQery_List.SetItemText(i,19+2*j,str);
			j++;
			pstucourse.MoveNext();
		}
		i++;
		pstucourse.Close();
		pdorm.Close();
		pstu.MoveNext();
	}
	pstu.Close();
	}
	catch(CDBException *pe){
		AfxMessageBox(pe->m_strError);
		pe->Delete();
	}	
}

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

BOOL CStuMQdlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	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.InsertColumn(7,"入学成绩");
	m_stuQery_List.InsertColumn(8,"住宿编号");
	m_stuQery_List.InsertColumn(9,"家庭联系电话");
	m_stuQery_List.InsertColumn(10,"家庭住址");
	m_stuQery_List.InsertColumn(11,"备注");
	/*********************************************/
	m_stuQery_List.InsertColumn(12,"楼号");
	m_stuQery_List.InsertColumn(13,"房间编号");
    m_stuQery_List.InsertColumn(14,"人数");
	m_stuQery_List.InsertColumn(15,"舍长编号");
	m_stuQery_List.InsertColumn(16,"电话号码");
	m_stuQery_List.InsertColumn(17,"所在班级");
    /*******************************************/
	m_stuQery_List.InsertColumn(18,"课程号");
    m_stuQery_List.InsertColumn(19,"成绩");


	
    ///////////////////////////////////
	m_stuQery_List.SetColumnWidth(0,60);
	m_stuQery_List.SetColumnWidth(1,60);
	m_stuQery_List.SetColumnWidth(2,60);
	m_stuQery_List.SetColumnWidth(3,60);
	m_stuQery_List.SetColumnWidth(4,100);
	m_stuQery_List.SetColumnWidth(5,100);
	m_stuQery_List.SetColumnWidth(6,100);
	m_stuQery_List.SetColumnWidth(7,100);
	m_stuQery_List.SetColumnWidth(8,100);
	m_stuQery_List.SetColumnWidth(9,100);
	m_stuQery_List.SetColumnWidth(10,100);
	m_stuQery_List.SetColumnWidth(11,140);
    /***************************************/
	m_stuQery_List.SetColumnWidth(12,100);
	m_stuQery_List.SetColumnWidth(13,100);
	m_stuQery_List.SetColumnWidth(14,100);
	m_stuQery_List.SetColumnWidth(15,100);
	m_stuQery_List.SetColumnWidth(16,100);
	m_stuQery_List.SetColumnWidth(17,100);
	/******************************************/
    m_stuQery_List.SetColumnWidth(1,80);
	m_stuQery_List.SetColumnWidth(1,80);

	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
}

⌨️ 快捷键说明

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