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

📄 registerdialog.cpp

📁 学生选课系统,功能齐全,什么登陆,查询,选课,删除课程,什么都有,有数据库
💻 CPP
字号:
// RegisterDialog.cpp : implementation file
//

#include "stdafx.h"
#include "CourseChose.h"
#include "RegisterDialog.h"
#include ".\registerdialog.h"
#include ".\mysqloperat.h"

#include <string>

using namespace std;

CMysqlOperat MysqlOp;

// CRegisterDialog dialog

IMPLEMENT_DYNAMIC(CRegisterDialog, CDialog)
CRegisterDialog::CRegisterDialog(CWnd* pParent /*=NULL*/)
	: CDialog(CRegisterDialog::IDD, pParent)
	, m_strUserName(_T(""))
	, m_strPasswd01(_T(""))
	, m_strPasswd02(_T(""))
	, m_strStyle(_T(""))
	, strName(_T(""))
	, strClass(_T(""))
{
	m_bInitCombox = FALSE;	
}

CRegisterDialog::~CRegisterDialog()
{
}

void CRegisterDialog::OnLButtonDown(UINT nFlags, CPoint pt)
{

}

void CRegisterDialog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Text(pDX, IDC_EDIT1, m_strUserName);
	DDX_Text(pDX, IDC_EDIT2, m_strPasswd01);
	DDX_Text(pDX, IDC_EDIT3, m_strPasswd02);
	DDX_Control(pDX, IDC_COMBO1, m_comStyle);
	DDX_CBString(pDX, IDC_COMBO1, m_strStyle);
	DDX_Text(pDX, IDC_EDIT4, strName);
	DDX_Text(pDX, IDC_EDIT5, strClass);
	DDX_Control(pDX, IDS_REGISTER_NAME, m_SName);
	DDX_Control(pDX, IDC_REGISTER_CLASS, m_SClass);
	DDX_Control(pDX, IDC_EDIT4, m_EName);
	DDX_Control(pDX, IDC_EDIT5, m_ECass);
}


BEGIN_MESSAGE_MAP(CRegisterDialog, CDialog)
	ON_BN_CLICKED(IDB_REGISTER_REGISTER, OnBnClickedRegisterRegister)
	ON_BN_CLICKED(IDB_REGISTER_CANCLE, OnBnClickedRegisterCancle)
	ON_CBN_DROPDOWN(IDC_COMBO1, OnCbnDropdownCombo1)
	ON_CBN_SELENDCANCEL(IDC_COMBO1, OnCbnSelendcancelCombo1)
END_MESSAGE_MAP()


// CRegisterDialog message handlers

void CRegisterDialog::OnBnClickedRegisterRegister()
{
	// TODO: Add your control notification handler code here
	UpdateData();

	//选择注册类型
	if (this->m_strStyle.IsEmpty())
	{
		MessageBox(TEXT("请选择注册类型"));

		return;
	}

	//基本信息ID不能为空
	if (this->m_strUserName.IsEmpty())
	{
		MessageBox("请输入用ID");

		return;
	}

	//密码不能为空
	if (this->m_strPasswd01.IsEmpty() || this->m_strPasswd02.IsEmpty())
	{
		MessageBox(TEXT("请输入密码"));

		return;
	}

	//密码必须一致
	if (this->m_strPasswd01 != this->m_strPasswd02)
	{
		MessageBox(TEXT("两次密码不一致!"));

		this->m_strPasswd01.Empty();
		this->m_strPasswd02.Empty();

		UpdateData(FALSE);

		return;
	}

	//密码必须在6~16位之间
	if ( (this->m_strPasswd01.GetLength() < 6) || (this->m_strPasswd01.GetAllocLength() > 16) )
	{
		MessageBox("密码长度在6~16位");

		return;
	}

	//姓名不能为空
	if (this->strName.IsEmpty())
	{
		MessageBox("请输入姓名");

		return;
	}

	char	szTemp[20] = "\0";

	//分类判断
	if (!this->m_strStyle.Compare("教师"))
	{
		//写入数据库		
		string str = "insert into Teacher(tid, tname, tpassword) values (";

		strcpy(szTemp, m_strUserName); 
		str += szTemp;
		str += ",";

		strcpy(szTemp, strName);
		str += '\'';
		str += szTemp;
		str += '\'';
		str += ",";

		strcpy(szTemp, m_strPasswd01);
		str += '\'';
		str += szTemp;
		str += '\'';
		str += ");";

		MysqlOp.RunSQL(str.c_str());

	}
	else if (!this->m_strStyle.Compare("学生"))
	{
		if (this->strClass.IsEmpty())
		{
			MessageBox("请输入班级!");

			return;
		}
		//写入数据库
		string str = "insert into Student(sid, sname, sclass, password) values (";
		
		strcpy(szTemp, m_strUserName); 
		str += szTemp;
		str += ",";

		strcpy(szTemp, strName);
		str += '\'';
		str += szTemp;
		str += '\'';
		str += ",";

		strcpy(szTemp, strClass);
		str += '\'';
		str += szTemp;
		str += '\'';
		str += ",";

		strcpy(szTemp, m_strPasswd01);
		str += '\'';
		str += szTemp;
		str += '\'';
		str += ");";

		MysqlOp.RunSQL(str.c_str());
	}
	else
	{
		MessageBox("程序遇到意外错误!即将退出注册系统!");

		OnOK();

		return;
	}

	MessageBox(TEXT("恭喜你!注册成功!"));

	OnOK();
}

void CRegisterDialog::OnBnClickedRegisterCancle()
{
	// TODO: Add your control notification handler code here

	if (IDYES == MessageBox(TEXT("真的要退出注册吗?"), 0, MB_YESNO))
	{
		OnCancel();
	}
}

void CRegisterDialog::OnCbnDropdownCombo1()
{
	// TODO: Add your control notification handler code here
	if (!m_bInitCombox)
	{
		this->m_comStyle.InsertString(0,TEXT("教师"));
		this->m_comStyle.InsertString(1,TEXT("学生"));

		this->m_comStyle.SetCurSel(1);

		m_bInitCombox = TRUE;
	}
}

void CRegisterDialog::OnCbnSelendcancelCombo1()
{
	// TODO: Add your control notification handler code here
	int	nIndex = 0;

	nIndex = this->m_comStyle.GetCurSel();
	if (nIndex == 1)
	{
		this->m_SClass.ShowWindow(SW_SHOW);
		this->m_ECass.ShowWindow(SW_SHOW);

		this->m_comStyle.SetCurSel(1);
	}
	else
	{
		this->m_SClass.ShowWindow(SW_HIDE);
		this->m_ECass.ShowWindow(SW_HIDE);

		this->m_comStyle.SetCurSel(0);
	}
}

⌨️ 快捷键说明

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