📄 cabmoddlg.cpp
字号:
// CabModDlg.cpp : implementation file
//
#include "stdafx.h"
#include "Team2.h"
#include "CabModDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCabModDlg dialog
CCabModDlg::CCabModDlg(CWnd* pParent /*=NULL*/)
: CDialog(CCabModDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CCabModDlg)
m_cabid = _T("");
m_cabname = _T("");
m_cabrank = _T("");
m_cabtel = _T("");
m_cabpswd = _T("");
//}}AFX_DATA_INIT
}
void CCabModDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CCabModDlg)
DDX_Control(pDX, IDC_CABINFO, m_cablist);
DDX_Text(pDX, IDC_EDIT1, m_cabid);
DDX_Text(pDX, IDC_EDIT2, m_cabname);
DDX_Text(pDX, IDC_EDIT3, m_cabrank);
DDX_Text(pDX, IDC_EDIT4, m_cabtel);
DDX_Text(pDX, IDC_EDIT5, m_cabpswd);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CCabModDlg, CDialog)
//{{AFX_MSG_MAP(CCabModDlg)
ON_BN_CLICKED(IDC_CABADD_ADM, OnCabAddBtn)
ON_BN_CLICKED(IDC_CABMOD_ADM, OnCabModBtn)
ON_BN_CLICKED(IDC_CABQUERY_ADM, OnCabQueryBtn)
ON_BN_CLICKED(IDC_CABDEL_ADM, OnCabDelBtn)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCabModDlg message handlers
void CCabModDlg::OnCancel()
{
// TODO: Add extra cleanup here
m_cablist.DeleteAllItems(); // 清空列表框
db.Close();
CDialog::OnCancel();
}
BOOL CCabModDlg::OnInitDialog()
{
CDialog::OnInitDialog();
DWORD style=m_cablist.GetExtendedStyle();
m_cablist.SetExtendedStyle(style|LVS_EX_GRIDLINES);
m_cablist.InsertColumn(0,"军人证号");
m_cablist.InsertColumn(1,"姓名");
m_cablist.InsertColumn(2,"衔级");
m_cablist.InsertColumn(3,"电话");
m_cablist.InsertColumn(4,"口令");
RECT rectbasic;
m_cablist.GetWindowRect(&rectbasic);
int widbasic = rectbasic.right - rectbasic.left;
m_cablist.SetColumnWidth(0,widbasic/5);
m_cablist.SetColumnWidth(1,widbasic/5);
m_cablist.SetColumnWidth(2,widbasic/5);
m_cablist.SetColumnWidth(3,widbasic/5);
m_cablist.SetColumnWidth(4,widbasic/5);
m_cablist.SetExtendedStyle(LVS_EX_FULLROWSELECT);
Init();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CCabModDlg::OnCabAddBtn()
{
// TODO: Add your control notification handler code here
if(!db.Open("db1"))return;//连接数据库
CString strSQL;
UpdateData();
if(m_cabid.IsEmpty()) // 军人证号为空则返回
{
AfxMessageBox("军人证号不能为空!");
db.Close();
return;
}
CRecordset rs(&db);
rs.Open(CRecordset::forwardOnly,"select * from cab_info where id='" + m_cabid + "'");
if(!rs.IsEOF()) //已存在此记录
{
AfxMessageBox("该军人证号已存在!");
db.Close();
return;
}
strSQL="insert into cab_info values('"
+ m_cabid + "','" // ID
+ m_cabname + "','" // NAME
+ m_cabrank + "','" // 衔级
+ m_cabtel + "')"; //电话
db.ExecuteSQL(strSQL);
strSQL="insert into cab_pswd values('" + m_cabid + "','" + m_cabpswd + "')";
db.ExecuteSQL(strSQL);
Init(); //重新初始化窗口
AfxMessageBox("记录添加成功!");
db.Close();
}
void CCabModDlg::OnCabModBtn()
{
// TODO: Add your control notification handler code here
UpdateData();
if(!db.Open("db1"))return;
// int i=0;
// CRecordset rs(&db);
// CString s_id,s_name,s_rank,s_tel,s_pswd;
CString strSQL;
/* rs.Open(CRecordset::forwardOnly,"select * from cab_info where id='"+m_cabid+"'");
if(!rs.IsEOF())
{
//得到数据
rs.GetFieldValue("id",s_id);
rs.GetFieldValue("name",s_name);
rs.GetFieldValue("rank",s_rank);
rs.GetFieldValue("tel",s_tel);
rs.Close();
//得到口令
rs.Open(CRecordset::forwardOnly,
"select pswd from cab_pswd where id='"+s_id+"'");
rs.GetFieldValue("pswd",s_pswd);
rs.Close();
m_cabname=_T(s_name);
m_cabrank=_T(s_rank);
m_cabtel=_T(s_tel);
m_cabpswd=_T(s_pswd);
//加入列表
m_cablist.InsertItem(i,"");
m_cablist.SetItemText(i,0,s_id);
m_cablist.SetItemText(i,1,s_name);
m_cablist.SetItemText(i,2,s_rank);
m_cablist.SetItemText(i,3,s_tel);
m_cablist.SetItemText(i,4,s_pswd);
UpdateData(FALSE);
Exist=TRUE; //该队干部存在
}
else
{
rs.Close();
Init();
Exist=FALSE; //该队干部不存在
}
if(!Exist) // 该队干部不存在
{
AfxMessageBox("该军人证号不存在");
db.Close();
return;
}
else
{*/
// 写SQL语句
strSQL="update cab_info set\
name='" + m_cabname //NAME
+ "',rank='" + m_cabrank // rank
+ "',tel='" + m_cabtel //tel
+ "' where id='" + m_cabid + "'"; // 条件
db.ExecuteSQL(strSQL); // 执行
strSQL="update cab_pswd set\
pswd='" + m_cabpswd //password
+ "' where id='" + m_cabid +"'";//条件
db.ExecuteSQL(strSQL); //执行
AfxMessageBox("记录修改成功!");
db.Close();
// }
}
void CCabModDlg::OnCabQueryBtn()
{
// TODO: Add your control notification handler code here
UpdateData();
if(!db.Open("db1"))return;
if(m_cabid.IsEmpty()) // 军人证号为空则返回
{
AfxMessageBox("军人证号不能为空!");
db.Close();
return;
}
int i=0;
CRecordset rs(&db);
CString s_id,s_name,s_rank,s_tel,s_pswd;
CString strSQL;
rs.Open(CRecordset::forwardOnly,"select * from cab_info where id='"+m_cabid+"'");
if(!rs.IsEOF())
{
//得到数据
rs.GetFieldValue("id",s_id);
rs.GetFieldValue("name",s_name);
rs.GetFieldValue("rank",s_rank);
rs.GetFieldValue("tel",s_tel);
rs.Close();
//得到口令
rs.Open(CRecordset::forwardOnly,
"select pswd from cab_pswd where id='"+s_id+"'");
rs.GetFieldValue("pswd",s_pswd);
rs.Close();
m_cabname=_T(s_name);
m_cabrank=_T(s_rank);
m_cabtel=_T(s_tel);
m_cabpswd=_T(s_pswd);
//加入列表
m_cablist.InsertItem(i,"");
m_cablist.SetItemText(i,0,s_id);
m_cablist.SetItemText(i,1,s_name);
m_cablist.SetItemText(i,2,s_rank);
m_cablist.SetItemText(i,3,s_tel);
m_cablist.SetItemText(i,4,s_pswd);
UpdateData(FALSE);
Exist=TRUE; //该队干部存在
}
else
{
rs.Close();
Init();
Exist=FALSE; //该队干部不存在
}
if(!Exist) // 该队干部不存在
{
AfxMessageBox("该军人证号不存在");
db.Close();
return;
}
db.Close();
}
void CCabModDlg::OnCabDelBtn()
{
// TODO: Add your control notification handler code here
int i=m_cablist.GetSelectionMark();
CString strSQL;
if(i==-1)
{
MessageBox("请先选择记录!");
}
else
{
if(!db.Open("db1"))return;//连接数据库
CString m_id=m_cablist.GetItemText(i,0);
strSQL="delete from ins_info where id='" + m_id +"'";
db.ExecuteSQL(strSQL);
strSQL="delete from ins_pswd where id='" + m_id +"'";
db.ExecuteSQL(strSQL);
UpdateData();
db.Close();
}
}
void CCabModDlg::Init()
{
m_cabid=_T("");
m_cabname=_T("");
m_cabrank=_T("");
m_cabtel=_T("");
m_cabpswd=_T("");
UpdateData(FALSE);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -