📄 yhdlg.cpp
字号:
// YhDlg.cpp : implementation file
//
#include "stdafx.h"
#include "student.h"
#include "YhDlg.h"
#include "studentview.h"
#include "ado.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CYhDlg dialog
CYhDlg::CYhDlg(CWnd* pParent /*=NULL*/)
: CDialog(CYhDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CYhDlg)
m_U_ID = _T("");
m_U_Name = _T("");
m_U_Pass = _T("");
m_U_Qx = _T("");
//}}AFX_DATA_INIT
IsInit = false;
}
void CYhDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CYhDlg)
DDX_Control(pDX, IDC_LIST_U, m_listU);
DDX_Text(pDX, IDC_EDIT_U_ID, m_U_ID);
DDX_Text(pDX, IDC_EDIT_U_NAME, m_U_Name);
DDX_Text(pDX, IDC_EDIT_U_PASS, m_U_Pass);
DDX_CBString(pDX, IDC_COMBO_U_QX, m_U_Qx);
//}}AFX_DATA_MAP
if(!IsInit)
{
CRect rect1,rect2;
this->GetClientRect(&rect1);
this->m_parent->GetClientRect(&rect2);
int x= (rect2.Width()-STATIC_MYWIN_LEFT-rect1.Width())/2 +STATIC_MYWIN_LEFT;
int y= (rect2.Height()-STATIC_MYWIN_TOP-rect1.Height())/2 +STATIC_MYWIN_TOP;
if(x<STATIC_MYWIN_LEFT)
{
x = STATIC_MYWIN_LEFT;
}
if(y<STATIC_MYWIN_TOP)
{
y = STATIC_MYWIN_TOP;
}
this->MoveWindow(x,y,rect1.Width(),rect1.Height());
LV_COLUMN lvc;
lvc.mask = LVCF_TEXT | LVCF_SUBITEM | LVCF_WIDTH /*| LVCF_FMT*/;
lvc.iSubItem = 0;
lvc.pszText = (char *)"ID";
lvc.cx = 80;
m_listU.InsertColumn(0,&lvc);
lvc.iSubItem = 1;
lvc.pszText = (char *)"用户名";
lvc.cx = 110;
m_listU.InsertColumn(1,&lvc);
lvc.iSubItem = 2;
lvc.pszText = (char *)"权限";
lvc.cx = 100;
m_listU.InsertColumn(2,&lvc);
//
ShowAllUser();
//
IsInit = true;
}
}
BEGIN_MESSAGE_MAP(CYhDlg, CDialog)
//{{AFX_MSG_MAP(CYhDlg)
ON_BN_CLICKED(IDC_BU_CLOSE, OnBuClose)
ON_NOTIFY(NM_CLICK, IDC_LIST_U, OnClickListU)
ON_BN_CLICKED(IDC_BU_U_ADD, OnBuUAdd)
ON_BN_CLICKED(IDC_BU_U_DEL, OnBuUDel)
ON_BN_CLICKED(IDC_BU_U_SAVE, OnBuUSave)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CYhDlg message handlers
void CYhDlg::OnBuClose()
{
// TODO: Add your control notification handler code here
this->m_parent->m_Dlg_Yh = NULL;
LVFINDINFO info;
info.psz = "用户管理";
info.flags = LVFI_STRING;
this->m_parent->m_listCtrlGN.DeleteItem(this->m_parent->m_listCtrlGN.FindItem(&info)) ;
this->DestroyWindow();
}
void CYhDlg::OnClickListU(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
int index = m_listU.GetSelectionMark();
if(index<0)
{
return;
}
CString sqlt;
sqlt.Format("SELECT * FROM UserT WHERE ID=%s",m_listU.GetItemText(index,0));
m_parent->m_recSet->Open(sqlt.GetBuffer(100));
if(!m_parent->m_recSet->IsEOF())
{
this->UpdateData(true);
m_parent->m_recSet->GetFieldValue("ID",m_U_ID);
m_parent->m_recSet->GetFieldValue("Name",m_U_Name);
m_parent->m_recSet->GetFieldValue("Password",m_U_Pass);
m_parent->m_recSet->GetFieldValue("Class",m_U_Qx);
this->UpdateData(false);
}
m_parent->m_recSet->Close();
*pResult = 0;
}
void CYhDlg::ShowAllUser()
{
m_parent->m_recSet->Open("SELECT * FROM UserT");
LV_ITEM lvitem;
lvitem.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_STATE;
lvitem.state = 0;
lvitem.stateMask = 0;
char temp1[50];
m_listU.DeleteAllItems();
int i=0;
CString temp;
while(!m_parent->m_recSet->IsEOF())
{
lvitem.iItem = i;
lvitem.iSubItem = 0;
lvitem.pszText =itoa(i, temp1, 3);
m_listU.InsertItem(&lvitem);
m_parent->m_recSet->GetFieldValue("ID",temp);
m_listU.SetItemText(i,0,temp);
m_parent->m_recSet->GetFieldValue("Name",temp);
m_listU.SetItemText(i,1,temp);
m_parent->m_recSet->GetFieldValue("Class",temp);
m_listU.SetItemText(i,2,temp);
i++;
m_parent->m_recSet->MoveNext();
}
m_parent->m_recSet->Close();
}
void CYhDlg::OnBuUAdd()
{
// TODO: Add your control notification handler code here
this->UpdateData(true);
m_U_Name.TrimLeft();
m_U_Name.TrimRight();
if(m_U_Name == "")
{
MessageBox("请输入用户名");
return;
}
m_U_Pass.TrimLeft();
m_U_Pass.TrimRight();
if(m_U_Pass == "")
{
MessageBox("请输入密码");
return;
}
m_U_Qx.TrimLeft();
m_U_Qx.TrimRight();
if(m_U_Qx =="")
{
MessageBox("请选择权限");
return;
}
CString sqlt;
sqlt.Format("INSERT INTO UserT(Name,[Password],Class) VALUES('%s','%s','%s') ",m_U_Name,m_U_Pass,m_U_Qx);
m_parent->m_conn->Execute(sqlt);
ShowAllUser();
this->UpdateData(false);
}
void CYhDlg::OnBuUDel()
{
// TODO: Add your control notification handler code here
this->UpdateData(true);
m_U_ID.TrimLeft();
m_U_ID.TrimRight();
if(m_U_ID == "")
{
MessageBox("请选择用户");
return;
}
CString sqlt;
sqlt.Format("DELETE FROM UserT WHERE ID=%s",m_U_ID);
m_parent->m_conn->Execute(sqlt);
ShowAllUser();
this->UpdateData(false);
}
void CYhDlg::OnBuUSave()
{
// TODO: Add your control notification handler code here
this->UpdateData(true);
m_U_ID.TrimLeft();
m_U_ID.TrimRight();
if(m_U_ID == "")
{
MessageBox("请选择用户");
return;
}
m_U_Name.TrimLeft();
m_U_Name.TrimRight();
if(m_U_Name == "")
{
MessageBox("请输入用户名");
return;
}
m_U_Pass.TrimLeft();
m_U_Pass.TrimRight();
if(m_U_Pass == "")
{
MessageBox("请输入密码");
return;
}
m_U_Qx.TrimLeft();
m_U_Qx.TrimRight();
if(m_U_Qx =="")
{
MessageBox("请选择权限");
return;
}
CString sqlt;
sqlt.Format("UPDATE UserT SET Name='%s',[Password]='%s',Class='%s' WHERE ID=%s"\
,m_U_Name,m_U_Pass,m_U_Qx,m_U_ID);
m_parent->m_conn->Execute(sqlt);
ShowAllUser();
this->UpdateData(false);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -