📄 admiuserdlg.cpp
字号:
// AdmiUserDlg.cpp : implementation file
//
#include "stdafx.h"
#include "ManageSystem.h"
#include "AdmiUserDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CAdmiUserDlg dialog
CAdmiUserDlg::CAdmiUserDlg(CWnd* pParent /*=NULL*/)
: CDialog(CAdmiUserDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CAdmiUserDlg)
//}}AFX_DATA_INIT
}
void CAdmiUserDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAdmiUserDlg)
DDX_Control(pDX, IDC_LISTMEMBER, m_ListMember);
DDX_Control(pDX, IDOK, m_btnOK);
DDX_Control(pDX, IDC_MODIFYUSER, m_btnModify);
DDX_Control(pDX, IDC_DELETEUSER, m_btnDelete);
DDX_Control(pDX, IDC_ADDUSER, m_btnAdd);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAdmiUserDlg, CDialog)
//{{AFX_MSG_MAP(CAdmiUserDlg)
ON_BN_CLICKED(IDC_DELETEUSER, OnDeleteuser)
ON_BN_CLICKED(IDC_ADDUSER, OnAdduser)
ON_COMMAND(ID_QUANXIAN_ADMI, OnQuanxianAdmi)
ON_COMMAND(ID_QUANXIAN_USER, OnQuanxianUser)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAdmiUserDlg message handlers
BOOL CAdmiUserDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
newID=0;
int index,i=0;
try
{
m_AdmiSet=new CAdmiSet();
CString strSQL("SELECT * from administrator where admi_id NOT LIKE '");
CString strNowID;
strNowID.Format("%d",NowUserID);
strSQL+=strNowID;
strSQL+="'";
m_AdmiSet->Open(CRecordset::snapshot,strSQL);
while(!m_AdmiSet->IsEOF())
{
index=m_ListMember.AddString(m_AdmiSet->m_admi_name);
if(m_AdmiSet->m_admi_id>newID)
newID=m_AdmiSet->m_admi_id;
m_ListMember.SetItemData(index,i);
m_AdmiSet->MoveNext();
i++;
}
}
catch(CDBException* pe)
{
AfxMessageBox(pe->m_strError);
pe->Delete();
if(m_AdmiSet)
{
if(m_AdmiSet->IsOpen())
m_AdmiSet->Close();
delete m_AdmiSet;
}
}
m_btnOK.SetShade(CShadeButtonST::SHS_METAL);
m_btnOK.DrawFlatFocus(TRUE);
m_btnAdd.SetShade(CShadeButtonST::SHS_METAL);
m_btnAdd.DrawFlatFocus(TRUE);
m_btnModify.SetShade(CShadeButtonST::SHS_METAL);
m_btnModify.DrawFlatFocus(TRUE);
m_btnDelete.SetShade(CShadeButtonST::SHS_METAL);
m_btnDelete.DrawFlatFocus(TRUE);
//#ifdef BTNST_USE_BCMENU
// m_btnModify.SetMenu(IDR_MYMENUE, m_hWnd, TRUE, IDR_TOOLBAR);
//#else
m_btnModify.SetMenu(IDR_MYMENUE, m_hWnd);
//#endif
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CAdmiUserDlg::Refresh()
{
if(m_AdmiSet)
{
if(m_AdmiSet->IsOpen())
m_AdmiSet->Close();
delete m_AdmiSet;
}
int total=m_ListMember.GetCount();
for(int j=0;j<total;j++)
{
m_ListMember.DeleteString(0);
}
int index,i=0;
newID=0;
try
{
m_AdmiSet=new CAdmiSet();
CString strSQL("SELECT * from administrator");
m_AdmiSet->Open(CRecordset::snapshot,strSQL);
while(!m_AdmiSet->IsEOF())
{
index=m_ListMember.AddString(m_AdmiSet->m_admi_name);
if(newID<=m_AdmiSet->m_admi_id)
newID=m_AdmiSet->m_admi_id;
m_ListMember.SetItemData(index,i);
m_AdmiSet->MoveNext();
i++;
}
}
catch(CDBException* pe)
{
AfxMessageBox(pe->m_strError);
pe->Delete();
if(m_AdmiSet)
{
if(m_AdmiSet->IsOpen())
m_AdmiSet->Close();
delete m_AdmiSet;
}
}
}
void CAdmiUserDlg::OnDeleteuser()
{
// TODO: Add your control notification handler code here
int nSelIndex=m_ListMember.GetCurSel();
int SetIndex;
if(nSelIndex!=LB_ERR)
{
CString user;
m_ListMember.GetText(nSelIndex,user);
user.TrimRight();
if(IDOK==AfxMessageBox("确实要删除用户 '"+user+"' 吗?",MB_OKCANCEL));
{
SetIndex=m_ListMember.GetItemData(nSelIndex);
m_AdmiSet->MoveFirst();
m_AdmiSet->Move(SetIndex);
if(!m_AdmiSet->IsEOF()&&!m_AdmiSet->IsDeleted())
{
m_AdmiSet->Delete();
m_AdmiSet->MoveNext();
m_ListMember.DeleteString(nSelIndex);
}
}
}
else
{
AfxMessageBox("请选择需要删除的用户.");
}
}
void CAdmiUserDlg::OnCancel()
{
// TODO: Add extra cleanup here
if(m_AdmiSet)
{
if(m_AdmiSet->IsOpen())
m_AdmiSet->Close();
delete m_AdmiSet;
}
CDialog::OnCancel();
}
void CAdmiUserDlg::OnOK()
{
// TODO: Add extra validation here
if(m_AdmiSet)
{
if(m_AdmiSet->IsOpen())
m_AdmiSet->Close();
delete m_AdmiSet;
}
CDialog::OnOK();
}
void CAdmiUserDlg::OnAdduser()
{
// TODO: Add your control notification handler code here
newID++;
CString test;
if(IDOK==m_AddDlg.DoModal())
{
m_AdmiSet->AddNew();
m_AdmiSet->m_admi_name=m_AddDlg.m_Name;
m_AdmiSet->m_isadmini=m_AddDlg.m_IsAdmi;
m_AdmiSet->m_admi_password="7777777";
m_AdmiSet->m_admi_id=newID;
m_AdmiSet->Update();
Refresh();
}
}
void CAdmiUserDlg::OnQuanxianAdmi()
{
// TODO: Add your command handler code here
int nSelIndex=m_ListMember.GetCurSel();
int SetIndex;
if(nSelIndex!=LB_ERR)
{
CString user;
m_ListMember.GetText(nSelIndex,user);
user.TrimRight();
SetIndex=m_ListMember.GetItemData(nSelIndex);
m_AdmiSet->MoveFirst();
m_AdmiSet->Move(SetIndex);
if(!m_AdmiSet->IsEOF()&&!m_AdmiSet->IsDeleted())
{
if(m_AdmiSet->m_isadmini!=0)
{
m_AdmiSet->Edit();
m_AdmiSet->m_isadmini=0;
m_AdmiSet->Update();
}
}
}
else
{
AfxMessageBox("请选择需要修改的用户.");
}
}
void CAdmiUserDlg::OnQuanxianUser()
{
// TODO: Add your command handler code here
int nSelIndex=m_ListMember.GetCurSel();
int SetIndex;
if(nSelIndex!=LB_ERR)
{
CString user;
m_ListMember.GetText(nSelIndex,user);
user.TrimRight();
SetIndex=m_ListMember.GetItemData(nSelIndex);
m_AdmiSet->MoveFirst();
m_AdmiSet->Move(SetIndex);
if(!m_AdmiSet->IsEOF()&&!m_AdmiSet->IsDeleted())
{
if(m_AdmiSet->m_isadmini!=1)
{
m_AdmiSet->Edit();
m_AdmiSet->m_isadmini=1;
m_AdmiSet->Update();
}
}
}
else
{
AfxMessageBox("请选择需要修改的用户.");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -