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

📄 stuqdlg.cpp

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

#include "stdafx.h"
#include "Student.h"
#include "StuQdlg.h"

#include "StudentSet.h"
#include "Student.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CStuQdlg dialog


CStuQdlg::CStuQdlg(CWnd* pParent /*=NULL*/)
	: CDialog(CStuQdlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CStuQdlg)
	m_Stu_name = _T("");
	m_Stu_no = _T("");
	//}}AFX_DATA_INIT
}


void CStuQdlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CStuQdlg)
	DDX_Control(pDX, IDC_LIST_STUQ, m_stuQuery_List);
	DDX_Text(pDX, IDC_EDIT_NAME, m_Stu_name);
	DDX_Text(pDX, IDC_EDIT_NO, m_Stu_no);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CStuQdlg, CDialog)
	//{{AFX_MSG_MAP(CStuQdlg)
	ON_BN_CLICKED(IDC_BTN_PERSON, OnBtnPerson)
	ON_BN_CLICKED(IDC_BTN_QUERY, OnBtnQuery)
	ON_BN_CLICKED(IDC_BTN_DELETE, OnBtnDelete)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CStuQdlg message handlers

void CStuQdlg::OnBtnPerson() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
    CStudentSet pstu;
//	CDlgLogin *dl;//存放标志登录用户是老师还是学生的类
    CString strSQL;
	try{
		strSQL="select * from student where pstu.m_Stu_no=NNNNN";//NNNN为从登录界面获得的学生的学号
	    //AfxMessageBox("打开数据库!");
	    if(!pstu.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
		{
		    AfxMessageBox("打开数据库失败!");
		    return;
		}
	    m_stuQuery_List.DeleteAllItems();//将表中原有的记录全部删掉

	    m_stuQuery_List.InsertItem(0,pstu.m_Stu_no);

		m_stuQuery_List.SetItemText(0,1,pstu.m_Name);

	
		m_stuQuery_List.SetItemText(0,2,pstu.m_Nation);

	
		m_stuQuery_List.SetItemText(0,3,pstu.m_Sex);
        CString   str; 
	    str.Format("%f",pstu.m_Birth);
		m_stuQuery_List.SetItemText(0,4,str);

		m_stuQuery_List.SetItemText(0,5,pstu.m_Polity);

		m_stuQuery_List.SetItemText(0,6,pstu.m_Scoure);

		  
        str.Format("%f",pstu.m_Score);   
		m_stuQuery_List.SetItemText(0,7,str);

		m_stuQuery_List.SetItemText(0,8,pstu.m_Dom_no);

		m_stuQuery_List.SetItemText(0,9,pstu.m_Home_phone);

		m_stuQuery_List.SetItemText(0,10,pstu.m_Address);

		m_stuQuery_List.SetItemText(0,11,pstu.m_Content);

	    pstu.Close();
	}
	catch(CDBException *pe){
		AfxMessageBox(pe->m_strError);
		pe->Delete();
	}
}

void CStuQdlg::OnBtnQuery() 
{
	// TODO: Add your control notification handler code here
	UpdateData(true);
	CStudentSet dss;

    CString strSQL;
	try{
		if(!m_Stu_no.IsEmpty())
		    strSQL="select * from student where dss.m_Stu_no=m_Stu_no";
		else{
			if(m_Stu_name.IsEmpty()){
				AfxMessageBox("请输入要查询学生姓名!");
				return;
			}
		
			strSQL="select * from student where dss.m_Name=m_Stu_name";
		}
	//AfxMessageBox("打开数据库!");
	if(!dss.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
	{
		 AfxMessageBox("打开数据库失败!");
		return;
	}
	m_stuQuery_List.DeleteAllItems();//将表中原有的记录全部删掉
	int Item=0,i=0;
	//char *buffer;
	while(!dss.IsEOF())
	{
	    //AddToList(pstu,i);
		CString str;
        //CStudentApp * dl;
	    m_stuQuery_List.InsertItem(Item,dss.m_Stu_no);

		m_stuQuery_List.SetItemText(Item,1,dss.m_Name);

	
		m_stuQuery_List.SetItemText(Item,2,dss.m_Nation);

	
		m_stuQuery_List.SetItemText(Item,3,dss.m_Sex);
        
	    str.Format("%s",dss.m_Birth);
		m_stuQuery_List.SetItemText(Item,4,str);

		m_stuQuery_List.SetItemText(Item,5,dss.m_Polity);

		m_stuQuery_List.SetItemText(Item,6,dss.m_Scoure);

		if(m_kind!=2){//当前用户不是学生
			str.Format("%s",dss.m_Score);
			m_stuQuery_List.SetItemText(Item,7,str);
		}
		m_stuQuery_List.SetItemText(Item,8,dss.m_Dom_no);

		m_stuQuery_List.SetItemText(Item,9,dss.m_Home_phone);
		m_stuQuery_List.SetItemText(Item,10,dss.m_Address);
		m_stuQuery_List.SetItemText(Item,11,dss.m_Content);

		i++;
		dss.MoveNext();
	}
	dss.Close();
	}
	catch(CDBException *pe){
		AfxMessageBox(pe->m_strError);
		pe->Delete();
	}
}

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

void CStuQdlg::OnBtnDelete() 
{
	// TODO: Add your control notification handler code here
	
}
void CStuQdlg::AddToList(CStudentSet dss, int Item)
{

}
BOOL CStuQdlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	//初始化学生基本信息表
	m_stuQuery_List.InsertColumn(0,"学号");
	m_stuQuery_List.InsertColumn(1,"姓名");
	m_stuQuery_List.InsertColumn(2,"民族");
	m_stuQuery_List.InsertColumn(3,"性别");
	m_stuQuery_List.InsertColumn(4,"出生日期");
	m_stuQuery_List.InsertColumn(5,"政治面貌");
	m_stuQuery_List.InsertColumn(6,"学生来源");
	m_stuQuery_List.InsertColumn(7,"入学成绩");
	m_stuQuery_List.InsertColumn(8,"住宿编号");
	m_stuQuery_List.InsertColumn(9,"家庭联系电话");
	m_stuQuery_List.InsertColumn(10,"家庭住址");
	m_stuQuery_List.InsertColumn(11,"备注");
	

    
	
    m_stuQuery_List.SetColumnWidth(0,80);
    m_stuQuery_List.SetColumnWidth(1,80);
	m_stuQuery_List.SetColumnWidth(2,60);
	m_stuQuery_List.SetColumnWidth(3,60);
	m_stuQuery_List.SetColumnWidth(4,100);//!!!!!!!!
	m_stuQuery_List.SetColumnWidth(5,60);
	m_stuQuery_List.SetColumnWidth(6,100);
	m_stuQuery_List.SetColumnWidth(7,100);
	m_stuQuery_List.SetColumnWidth(8,100);
	m_stuQuery_List.SetColumnWidth(9,120);
	m_stuQuery_List.SetColumnWidth(10,100);
	m_stuQuery_List.SetColumnWidth(11,140);


	m_stuQuery_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 + -