图书管理系统的操作员信息管理界面及其功能设计
来源:互联网 发布:linux cp mv 编辑:程序博客网 时间:2024/06/10 11:41
界面设计如下:
利用ClasasWizard创建关联变量m_name,m_password,m_lever,m_list,在对话框类中创建m_recordset变量,类型为之前连接相应数据库tb_operator的类CUserSet
void CDlgOperator::LoadOperatorInfo()
{
m_list.DeleteAllItems();
CString strSQL;
strSQL.Format("select * from tb_operator");
CUserSet recordset;
if(!recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
{
MessageBox("打开数据库失败!","数据库错误",MB_OK);
return ;
}
int i = 0;
while(!recordset.IsEOF())
{
m_list.InsertItem(i,recordset.m_name);
m_list.SetItemText(i,1,recordset.m_password);
// m_list.InsertColumn(i,'');
i++;
recordset.MoveNext();
}
recordset.Close();
m_list.SetRedraw(TRUE);
//UpdateData(FALSE);
}
BOOL CDlgOperator::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_list.InsertColumn(0,"操作员名称");
m_list.InsertColumn(1,"操作员密码");
m_list.InsertColumn(2,"操作员级别");
m_list.SetColumnWidth(0,250);
m_list.SetColumnWidth(1,200);
m_list.SetColumnWidth(2,180);
m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
LoadOperatorInfo();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
以上函数可以进行对话框的初始化
1添加事件的响应函数如下:
void CDlgOperator::OnBtnadd()
{
// TODO: Add your control notification handler code here
UpdateData();
if (m_name.IsEmpty())
{
MessageBox("操作员名称不能为空!");
return ;
}
else if (m_password.IsEmpty())
{
MessageBox("操作员密码不能为空!");
return ;
}
else if (m_lever == 0)
{
MessageBox("操作员级别不能为0!");
return ;
}
CString strSQL;
strSQL.Format("select * from tb_operator where name ='%s'",m_name);
//strSQL.Format("insert into tb_operator values('%s','%s',%d)",m_name,m_password,m_lever);
if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
{
MessageBox("打开数据库失败!","数据库错误",MB_OK);
return ;
}
if(m_recordset.GetRecordCount()>0)
{
MessageBox("此用户名被人使用,请重新输入!");
return ;
}
else{
m_recordset.AddNew();
m_recordset.m_name = m_name;
m_recordset.m_password = m_password;
m_recordset.Update();
m_recordset.Close();
m_list.InsertItem(0,m_name);
m_list.SetItemText(0,1,m_password);
//m_list.SetRedraw();
UpdateData(FALSE);
}
}
2删除事件的响应函数:
void CDlgOperator::OnBtndelete()
{
// TODO: Add your control notification handler code here
int i = m_list.GetSelectionMark();
if(0>i)
{
AfxMessageBox("请选择一条记录进行删除!");
return;
}
CString strSQL;
strSQL.Format("select * from tb_operator where name = '%s' ",m_list.GetItemText(i,0));
if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
{
AfxMessageBox("打开数据库失败!");
return ;
}
m_recordset.Delete();
m_recordset.Close();
m_list.DeleteItem(i);
UpdateData(FALSE);
}
3修改事件的响应函数:
void CDlgOperator::OnBtnupdate()
{
// TODO: Add your control notification handler code here
int i= m_list.GetSelectionMark();
if(0>i)
{
AfxMessageBox("请选择一条记录进行更新!");
return;
}
CUserUpdateDlg dlg; //自己写的一个修改的对话框
dlg.m_name = m_list.GetItemText(i,0);
dlg.m_password = m_list.GetItemText(i,1);
if(dlg.DoModal()==IDOK)
{
//打开记录集
CString strSQL;
strSQL.Format("select * from tb_operator where name='%s'",dlg.m_name);
if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
{
MessageBox("打开数据库失败!","数据库错误",MB_OK);
return ;
}
//判断记录是否不存在
if(m_recordset.GetRecordCount()==0)
{
m_recordset.Close();
MessageBox("该记录不存在!");
return;
}
m_recordset.Edit();
m_recordset.m_name = dlg.m_name;
m_recordset.m_password = dlg.m_password;
m_recordset.Update();
m_recordset.Close();
//更新列表
LoadOperatorInfo();
}
}
4修改对话框的设计:
void CUserUpdateDlg::OnOK()
{
// TODO: Add extra validation here
UpdateData();
if(m_password.IsEmpty())
{
MessageBox("密码不能为空!");
return;
}
CDialog::OnOK();
}
BOOL CUserUpdateDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
UpdateData(FALSE);
GetDlgItem(IDC_EDITNAME)->EnableWindow(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return
}
以上就可完成操作员信息管理的功能了!
- 图书管理系统的操作员信息管理界面及其功能设计
- 图书管理系统功能设计
- 图书管理系统之图书信息管理实现
- 图书管理系统之读者信息管理实现
- 图书管理系统图书信息界面
- 图书管理系统主界面
- 图书管理系统学生界面
- 学生信息管理系统的用例图和图书管理系统系统分析及用例图
- 图书管理系统2--- 主界面的实现
- 图书信息管理系统
- 图书信息管理系统设计
- 软件工程 图书信息管理系统
- 课程设计.图书信息管理系统
- 课程设计-图书信息管理系统
- 图书信息管理系统
- 图书信息管理系统
- 求图书管理系统 源代码,和界面
- 图书管理系统之登录界面实现
- 链表的实现
- RSA加密解密原理
- poj1696Space Ant
- UVA 10361 解题报告
- HDU 5207 Greatest Greatest Common Divisor
- 图书管理系统的操作员信息管理界面及其功能设计
- 【面试题】判断字符串是否匹配一定的模式
- 通过客户端编程方式调用webService
- [笔记]hadoop2.4.1分布式集群搭建入门/ha/zookeeper
- NYOJ 427 & HDU 1005 Number Sequence(找循环节)
- 黑马程序员_日记59_TreeMap自定义对象练习
- CXF中Web服务请求处理流程
- 第46课时,实践3,小学生算术测试程序加强版
- 指针函数和函数指针,指针常量和常量指针