?? usersmanagedlg.cpp
字號:
// UsersManageDlg.cpp : implementation file
//
#include "stdafx.h"
#include "library.h"
#include "UsersManageDlg.h"
#include "UsersCheckdlg.h"
#include "UsersSet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CUsersManageDlg dialog
CUsersManageDlg::CUsersManageDlg(CWnd* pParent /*=NULL*/)
: CDialog(CUsersManageDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CUsersManageDlg)
m_id = _T("");
m_password = _T("");
m_sex = _T("");
m_name = _T("");
m_address = _T("");
m_tel = _T("");
m_email = _T("");
m_class = _T("");
m_department = _T("");
m_major = _T("");
m_classno = _T("");
m_corporation = _T("");
m_readstat = _T("");
m_power = _T("");
//}}AFX_DATA_INIT
}
void CUsersManageDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CUsersManageDlg)
DDX_Text(pDX, IDC_ID, m_id);
DDX_Text(pDX, IDC_PASSWORD, m_password);
DDX_Text(pDX, IDC_SEX, m_sex);
DDX_Text(pDX, IDC_NAME, m_name);
DDX_Text(pDX, IDC_ADDRESS, m_address);
DDX_Text(pDX, IDC_TEL, m_tel);
DDX_Text(pDX, IDC_EMAIL, m_email);
DDX_Text(pDX, IDC_CLASS, m_class);
DDX_Text(pDX, IDC_DEPARTMENT, m_department);
DDX_Text(pDX, IDC_MAJOR, m_major);
DDX_Text(pDX, IDC_CLASSNO, m_classno);
DDX_Text(pDX, IDC_CORPORATION, m_corporation);
DDX_Text(pDX, IDC_READSTAT, m_readstat);
DDX_Text(pDX, IDC_POWER, m_power);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CUsersManageDlg, CDialog)
//{{AFX_MSG_MAP(CUsersManageDlg)
ON_BN_CLICKED(IDC_USERSADD, OnUsersadd)
ON_BN_CLICKED(IDC_USERSCHECK, OnUserscheck)
ON_WM_CTLCOLOR()
ON_BN_CLICKED(IDC_DELETE, OnDelete)
ON_BN_CLICKED(IDC_AMEND, OnAmend)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CUsersManageDlg message handlers
BOOL CUsersManageDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
// GetDlgItem(IDC_POWER)->SetWindowText("");
m_brush.CreateSolidBrush(RGB(0, 255, 0)); // 生成一綠色刷子
if(!m_database.IsOpen())
{
//連接數據源
if(!m_database.OpenEx("DSN=MySQL;UID=sa;PWD=123;CDatabase::noOdbcDialog"))
{
MessageBox("連接數據庫失敗!","新書登記入庫",MB_OK|MB_ICONINFORMATION);
return TRUE;
}
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CUsersManageDlg::OnUsersadd()
{
// TODO: Add your control notification handler code here
UpdateData(true);
m_id.TrimLeft();
m_id.TrimRight();
if(m_id.IsEmpty())
{
MessageBox("請填寫讀者ID","讀者加入");
GetDlgItem(IDC_ID)->SetFocus();
return;
}
CUsersSet *m_pset=new CUsersSet(&m_database);
//判斷庫中是否有該用戶,進行相應操作
CString strSQL;
strSQL.Format("select * from USERS where Uid='%s'",m_id);
m_pset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
//若庫中有該用戶記錄
if(m_pset->GetRecordCount()!=0)
{
MessageBox("庫中已有該用戶記錄,請核對!","讀者加入",MB_OK|MB_ICONINFORMATION);
m_pset->Close();
return;
}
else
{
m_pset->Close();
strSQL.Format("select * from USERS");
m_pset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
m_pset->AddNew();
m_pset->SetFieldNull(&(m_pset->m_Uid),FALSE);
m_pset->m_Uid=m_id;
m_pset->m_Upassword=m_password;
m_pset->m_Upower=atoi(m_power);
m_pset->m_Usex=atoi(m_sex);
m_pset->m_Uname=m_name;
m_pset->m_Uaddress=m_address;
m_pset->m_Utel=m_tel;
m_pset->m_Uemail=m_email;
m_pset->m_Uclass=m_class;
m_pset->m_Udepartment=m_class;
m_pset->m_Umajor=m_major;
m_pset->m_Uclassno=m_classno;
m_pset->m_Ucorporation=m_corporation;
m_pset->m_Ureadstat=atoi(m_readstat);
m_pset->Update();
m_pset->Requery();
m_pset->Close();
CString strTemp;
CString strPower;
strPower.Format("%d",m_power);
strTemp="ID:"+m_id+" 密碼"+m_password+"\n權限:"+strPower\
+" 性別:"+m_sex+" \n姓名:"+m_name+" 地址:"+m_address\
+"\n聯系電話"+m_tel+" email:"+m_email+"\n班級:"+m_class+" 系別:"+m_department\
+"\n專業"+m_major+" 學號:"+m_classno+"\n所在單位:"+m_corporation+" 用戶狀態:"+m_readstat+"\n成功加入";
MessageBox(strTemp,"讀者加入");
m_id.Empty();
m_password.Empty();
m_power=""; //0改為"";
m_sex=""; //1去掉
m_name.Empty();
m_address.Empty();
m_tel.Empty();
m_email.Empty();
m_class.Empty();
m_department.Empty();
m_major.Empty();
m_classno.Empty();
m_corporation.Empty();
m_readstat="";//1去掉
UpdateData(FALSE);
return;
}
}
void CUsersManageDlg::OnUserscheck()
{
// TODO: Add your control notification handler code here
CUsersCheckDlg dlg;
dlg.DoModal();
}
HBRUSH CUsersManageDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if(nCtlColor ==CTLCOLOR_DLG)
return m_brush; //返加綠色刷子
if(nCtlColor==CTLCOLOR_EDIT)
{
pDC->SetTextColor(RGB(0,0,255));
pDC->SetBkMode(TRANSPARENT);
}
if(nCtlColor==CTLCOLOR_STATIC)
{
//pDC->SetBkColor(RGB(0, 255, 0));
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkMode(TRANSPARENT);
}
if(nCtlColor== CTLCOLOR_LISTBOX)
{
pDC->SetTextColor(RGB(0,0,255));
//pDC->SetBkMode(TRANSPARENT);
}
// TODO: Return a different brush if the default is not desired
return hbr;
}
void CUsersManageDlg::OnDelete()
{
// TODO: Add your control notification handler code here
UpdateData(true);
m_id.TrimLeft();
m_id.TrimRight();
if(m_id.IsEmpty())
{
MessageBox("請填寫讀者ID","讀者加入");
GetDlgItem(IDC_ID)->SetFocus();
return;
}
CUsersSet *m_pset=new CUsersSet(&m_database);
CString strSQL;
strSQL.Format("select * from USERS where Uid='%s'",m_id);
m_pset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
if(m_pset->GetRecordCount()==0)
{
MessageBox("本館沒有該用戶記錄!","用戶修改");
m_pset->Close();
return;
}
else
{
m_pset->Delete();
MessageBox("ID為:"+m_id+"的讀者\n刪除成功!","圖書刪除");
m_id = _T("");
m_password = _T("");
m_power = "";
m_sex = _T("1");
m_name = _T("");
m_address = _T("");
m_tel = _T("");
m_email = _T("");
m_class = _T("");
m_department = _T("");
m_major = _T("");
m_classno = _T("");
m_corporation = _T("");
m_readstat = _T("1");
UpdateData(false);
m_pset->Close();
}
}
void CUsersManageDlg::OnAmend()
{
// TODO: Add your control notification handler code here
UpdateData(true);
m_id.TrimLeft();
m_id.TrimRight();
if(m_id.IsEmpty())
{
MessageBox("請填寫讀者ID","讀者加入");
GetDlgItem(IDC_ID)->SetFocus();
return;
}
CUsersSet *m_pset=new CUsersSet(&m_database);
CString strSQL;
strSQL.Format("select * from USERS where Uid='%s'",m_id);
m_pset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
if(m_pset->GetRecordCount()==0)
{
MessageBox("本館沒有該用戶記錄!","用戶修改");
m_pset->Close();
return;
}
else
{
m_pset->Edit();
m_pset->m_Uid=m_id;
m_pset->m_Upassword=m_password;
m_pset->m_Upower=atoi(m_power); //
m_pset->m_Usex=atoi(m_sex);
m_pset->m_Uname=m_name;
m_pset->m_Uaddress=m_address;
m_pset->m_Utel=m_tel;
m_pset->m_Uemail=m_email;
m_pset->m_Uclass=m_class;
m_pset->m_Udepartment=m_department;
m_pset->m_Umajor=m_major;
m_pset->m_Uclassno=m_classno;
m_pset->m_Ucorporation=m_corporation;
m_pset->m_Ureadstat=atoi(m_readstat);
m_pset->Update();
m_pset->Requery();
m_pset->Close();
MessageBox("ID為:"+m_id+"的讀者\n修改成功!","圖書修改");
m_id = _T("");
m_password = _T("");
m_sex = _T("1");
m_name = _T("");
m_address = _T("");
m_tel = _T("");
m_class = _T("");
m_email = _T("");
m_department = _T("");
m_major = _T("");
m_classno = _T("");
m_corporation = _T("");
m_readstat = _T("1");
UpdateData(false);
}
}
void CUsersManageDlg::OnCancel()
{
// TODO: Add extra cleanup here
if(m_database.IsOpen())
m_database.Close();
CDialog::OnCancel();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -