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

📄 collegeidlg.cpp

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

#include "stdafx.h"
#include "Student.h"
#include "CollegeIdlg.h"
#include "CollegeSet.h"

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

/////////////////////////////////////////////////////////////////////////////
// CCollegeIdlg dialog


CCollegeIdlg::CCollegeIdlg(CWnd* pParent /*=NULL*/)
	: CDialog(CCollegeIdlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CCollegeIdlg)
	m_college_no = _T("");
	m_help = _T("");
	m_introduction = _T("");
	m_name = _T("");
	m_phone = _T("");
	m_president = _T("");
	//}}AFX_DATA_INIT
}


void CCollegeIdlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCollegeIdlg)
	DDX_Text(pDX, IDC_EDIT_COLL_NO, m_college_no);
	DDX_Text(pDX, IDC_EDIT_HELP, m_help);
	DDX_Text(pDX, IDC_EDIT_INTRODC, m_introduction);
	DDX_Text(pDX, IDC_EDIT_NAME, m_name);
	DDX_Text(pDX, IDC_EDIT_PHONE, m_phone);
	DDX_Text(pDX, IDC_EDIT_PRESIDET, m_president);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CCollegeIdlg, CDialog)
	//{{AFX_MSG_MAP(CCollegeIdlg)
	ON_BN_CLICKED(IDC_BTN_OK, OnBtnOk)
	ON_EN_SETFOCUS(IDC_EDIT_NAME, OnSetfocusEditName)
	ON_EN_SETFOCUS(IDC_EDIT_INTRODC, OnSetfocusEditIntrodc)
	ON_EN_SETFOCUS(IDC_EDIT_PHONE, OnSetfocusEditPhone)
	ON_EN_SETFOCUS(IDC_EDIT_PRESIDET, OnSetfocusEditPresidet)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCollegeIdlg message handlers

void CCollegeIdlg::OnBtnOk() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	if(m_name.IsEmpty())
	{
		//MessageBeep(MB_ICONEXCLAMATION);
		this->GetDlgItem(IDC_EDIT_NAME)->SetFocus();
		return;
	}
	if(m_phone.IsEmpty())
	{
		//MessageBeep(MB_ICONEXCLAMATION);
		this->GetDlgItem(IDC_EDIT_PHONE)->SetFocus();
		return;
	}
	if(m_president.IsEmpty())
	{
		//MessageBeep(MB_ICONEXCLAMATION);
		this->GetDlgItem(IDC_EDIT_PRESIDET)->SetFocus();
		return;
	}
	if(!UpdateDB())
		return;
	GenNext();
	UpdateData(FALSE);
	this->GetDlgItem(IDC_EDIT_NAME)->SetFocus();
	CDialog::OnOK();
}

BOOL CCollegeIdlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	GenNext();
	UpdateData(FALSE);
	// TODO: Add extra initialization here
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

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

void CCollegeIdlg::OnSetfocusEditName() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	m_help="请输入名称信息:长度限制14个字符(7个汉字)";
	UpdateData(FALSE);
}

void CCollegeIdlg::OnSetfocusEditIntrodc() 
{
	// TODO: Add your control notification handler code here
		UpdateData(TRUE);
	m_help="请输入学院简介信息:长度限制14个字符";
	UpdateData(FALSE);
}

void CCollegeIdlg::OnSetfocusEditPhone() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	m_help="请输入联系电话信息:长度限制52个字符";
	UpdateData(FALSE);
}

void CCollegeIdlg::OnSetfocusEditPresidet() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	m_help="请输入院长信息:最小500,最大600";
	UpdateData(FALSE);
}
BOOL CCollegeIdlg::UpdateDB()
{
	CString strSQL,strValue,strTemp;
	
	//strTemp.Format("%d,to_date(\'%4d-%2d-%2d\',\'yyyy-mm-dd\')",m_score,m_birth_year,m_birth_month,m_birth_day);
	strSQL="insert into class(college_no,name,president,phone)";
	strValue="\'"+m_college_no+"\',\'"+m_name+"\',\'"+m_president+"\',\'"+m_phone;
	if (!m_introduction.IsEmpty())
	{
		strSQL+=",introduction";
		strValue+=",\'"+m_introduction+"\'";
	}
	
	strSQL+=") values("+strValue+")";
	//MessageBox(strSQL);
	m_pDB->ExecuteSQL(strSQL);
	return TRUE;
}
void CCollegeIdlg::GenNext()
{
	CCollegeSet rs;
	CString strValue;
	CString strFileName;
	
	static HBITMAP hBitmap=NULL;
	// TODO: Add extra initialization here
	
	m_college_no=GetNextNo();
	m_name ="";
	m_phone ="";
	m_president ="";
	m_introduction ="";
	m_CollegeNo = "";
}

CString CCollegeIdlg::GetNextNo()
{
	static int num=0;
	CCollegeSet rs;
	CString strValue,strSQL;
	BOOL Success;
	
	if(num==0)
	{
		strSQL.Format("select max(substr(stu_no,5)) from College where substr(college_no,1,4)=\'%02d%s\'",m_CollegeNo);
		Success=rs.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
		if (Success && rs.GetRecordCount()>0)
			rs.GetFieldValue((short)0,strValue);
		else
			strValue="0";
		num=atoi(strValue);
	}
	num++;
	strValue.Format("%s%04d",m_CollegeNo,num);
	return strValue;
}

void CCollegeIdlg::GenHelp(CString tCategory)
{
	CCollegeSet rs;
	CString strSQL,strValue,strZero;
	BOOL Success;
	int nLen;

	//UpdateData();
	strSQL.Format("select length(trim(ccode)) from userdict where category=\'%s\' and rownum<2",tCategory);
	Success=rs.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
	if(!Success)
		return ;
	rs.GetFieldValue((short)0,strValue);
	nLen=atoi(strValue);
	rs.Close();

	strSQL.Format("select trim(ccode)||\'-\'||trim(ctext) from userdict where category=\'%s\'",tCategory);
	Success=rs.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
	if(Success)
	{
		strZero="";
		for(int i=0;i<nLen;i++)
			strZero+="0";
		while (!rs.IsEOF())
		{
			rs.GetFieldValue((short)0,strValue);
			
			
			if (strValue.Left(nLen)==strZero)
				m_help="  "+strValue.Mid(nLen+1);
			else
				m_help+="\r\n\t"+strValue;
			rs.MoveNext();
		}
		rs.Close();
	}
	UpdateData(FALSE);
}

⌨️ 快捷键说明

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