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

📄 userdlg.cpp

📁 这是一个课程设计
💻 CPP
字号:
// UserDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Scoremanager.h"
#include "UserDlg.h"

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


CUserDlg::CUserDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CUserDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CUserDlg)
	//}}AFX_DATA_INIT
}


void CUserDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CUserDlg)
	DDX_Control(pDX, IDCANCEL2, m_can1);
	DDX_Control(pDX, IDCANCEL, m_can);
	DDX_Control(pDX, IDC_USER_EDIT, m_bEdit);
	DDX_Control(pDX, IDC_USER_DEL, m_bDel);
	DDX_Control(pDX, IDC_USER_ADD, m_bAdd);
	DDX_Control(pDX, ID_USER_OK, m_bConfirm);
	DDX_Control(pDX, IDC_USER_NO, m_strUserNo);
	DDX_Control(pDX, IDC_LIST_USER, m_list);
	DDX_Control(pDX, IDC_USER_LEVEL, m_cLevel);
	DDX_Control(pDX, IDC_USER_PASSWORD, m_strPassword);
	DDX_Control(pDX, IDC_USER_NAME, m_strUser);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CUserDlg, CDialog)
	//{{AFX_MSG_MAP(CUserDlg)
	ON_NOTIFY(NM_CLICK, IDC_LIST_USER, OnClickListUser)
	ON_BN_CLICKED(IDC_USER_ADD, OnUserAdd)
	ON_BN_CLICKED(IDC_USER_EDIT, OnUserEdit)
	ON_BN_CLICKED(IDC_USER_DEL, OnUserDel)
	ON_BN_CLICKED(ID_USER_OK, OnUserOk)
	ON_BN_CLICKED(IDCANCEL2, OnCancel2)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CUserDlg message handlers

void CUserDlg::refreshList()
{
m_list.DeleteAllItems();
m_userSet.Open();
m_userSet.m_strFilter="active_status='Y'";
m_userSet.Requery();
  for(int i=0;i<m_userSet.GetRecordCount();i++)
  {
   CString temp;
   m_userSet.GetFieldValue("user_id",temp);
   m_list.InsertItem(i,temp);
   m_userSet.GetFieldValue("user_name",temp);
   m_list.SetItemText(i,1,temp);
   m_userSet.GetFieldValue("user_password",temp);
   m_list.SetItemText(i,2,temp);
   m_userSet.GetFieldValue("user_level",temp);
   m_list.SetItemText(i,3,temp);
   m_userSet.MoveNext();}
   m_userSet.Close();

}

void CUserDlg::ResetButton()
{
m_strUserNo.EnableWindow(false);
m_strUser.EnableWindow(false);
m_strPassword.EnableWindow(false);
m_cLevel.EnableWindow(false);
m_bConfirm.EnableWindow(false);
m_bAdd.EnableWindow(true);
m_bDel.EnableWindow(true);
m_bEdit.EnableWindow(true);

}


BOOL CUserDlg::OnInitDialog()
{
	CDialog::OnInitDialog();
	m_list.InsertColumn(0,"用户号");
    m_list.InsertColumn(1,"用户名");
    m_list.InsertColumn(2,"密码");
	m_list.InsertColumn(3,"用户权限");
	RECT rectList;
	m_list.GetWindowRect(&rectList);
	int wid=rectList.right-rectList.left-4;
	for(int i=0;i<4;i++)
	m_list.SetColumnWidth(i,wid/4);
	m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT);
	refreshList();
	m_cLevel.AddString("管理员");
    m_cLevel.AddString("教师");
	m_cLevel.AddString("学生");
    m_cLevel.SelectString(0,"管理员");
	ResetButton();
	return TRUE;

}

void CUserDlg::OnClickListUser(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
    int row=m_list.GetSelectionMark();
	CString s;
	s=m_list.GetItemText(row,0);
	m_strUserNo.SetWindowText(s);
	s=m_list.GetItemText(row,1);
	m_strUser.SetWindowText(s);
	s=m_list.GetItemText(row,2);
	m_strPassword.SetWindowText(s);
	s=m_list.GetItemText(row,3);
	if(s=="0")
	{
		m_cLevel.SelectString(0,"管理员");
	}
	else if(s=="1")
	{
		m_cLevel.SelectString(1,"教师");
	}
	else if(s=="2")
	{
		m_cLevel.SelectString(2,"学生");
	}

	*pResult = 0;
}

void CUserDlg::OnUserAdd() 
{
	// TODO: Add your control notification handler code here
m_strUserNo.EnableWindow(true);
m_strUserNo.SetWindowText("");
m_strUser.EnableWindow(true);
m_strUser.SetWindowText("");
m_strPassword.EnableWindow(true);
m_strPassword.SetWindowText("");	
m_cLevel.EnableWindow(true);
m_cLevel.SelectString(0,"管理员");
m_userSet.Open();
m_userSet.AddNew();
m_bConfirm.EnableWindow(true);
m_bAdd.EnableWindow(true);
m_bDel.EnableWindow(true);
m_bEdit.EnableWindow(true);	
}

void CUserDlg::OnUserEdit() 
{
int row=m_list.GetSelectionMark();
CString s,strSQL;
s=m_list.GetItemText(row,0);
  if(s=="")
  {
	  MessageBox("请选中一行");
  }
  else
  {
	  strSQL.Format("user_id=%s",s);
	  m_userSet.Open();
	  m_userSet.m_strFilter=strSQL;
      m_userSet.Requery();
	  m_userSet.Edit();
	  m_bConfirm.EnableWindow(true);
	  //m_strUserNo.EnableWindow(true);
      m_strUser.EnableWindow(true);
      m_strPassword.EnableWindow(true);
      m_cLevel.EnableWindow(true);

      m_bAdd.EnableWindow(false);
      m_bDel.EnableWindow(false);
      m_bEdit.EnableWindow(false);

  }
}

void CUserDlg::OnUserDel() 
{
int row=m_list.GetSelectionMark();
CString s,strSQL;
s=m_list.GetItemText(row,0);
  if(s=="")
  {
	  MessageBox("请选中一行");
  }
  else
  {
	  if(MessageBox("确定要删除该记录吗?","删除询问",MB_OKCANCEL|MB_ICONQUESTION)==IDOK)
	  {
	  strSQL.Format("user_id=%s",s);
	  m_userSet.Open();
	  m_userSet.m_strFilter=strSQL;
      m_userSet.Requery();
	  m_userSet.Edit();
	  m_userSet.m_active_status="N";
	  m_userSet.Update();
      m_userSet.Close();
	  refreshList();
	  }
  }

}


void CUserDlg::OnUserOk() 
{
CString username,password,userno;
int level;
m_strUserNo.GetWindowText(userno);
m_strUser.GetWindowText(username);
m_strPassword.GetWindowText(password);
  if(userno=="")
  {
	  MessageBox("请输入用户号");
  }
  else if(username=="")
  {
	  MessageBox("请输入用户名");
  }	
  else if(password=="")
  {
	  MessageBox("请输入密码");
  }
  else
  {
	  int i=m_cLevel.GetCurSel();
	  if(i==0)
		  level=0;
	  if(i==1)
		  level=1;
	  if(i==2)
		  level=2;



      m_userSet.m_user_id=userno;


      m_userSet.m_user_name=username;
	  m_userSet.m_user_password=password;
	  m_userSet.m_user_level=level;
	  m_userSet.m_active_status="Y";

	  m_userSet.Update();
	  m_userSet.Close();
	  refreshList();
	  ResetButton();
  }
}

void CUserDlg::OnCancel() 
{
CDialog::OnCancel();
//EndDialog(IDCANCEL); 
//MessageBox("aaa");
//this->OnCancel(); 
//this->OnUserOk();   
//DestoryWindow();   
//SendMessage(WM_CLOSE) ;


}





void CUserDlg::OnCancel2() 
{
	if(m_userSet.IsOpen())
	   m_userSet.Close();
	ResetButton();
	
	
}

⌨️ 快捷键说明

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