10.6.5 用户添加的实现
管理员登录系统后,在主界面用户操作区域中单击【添加用户】按钮显示添加界面。输入用户名,选择对应的权限,输入密码和确认密码后,单击【确定】按钮完成添加用户操作。结合该模块技术分析可知,实现用户添加主要是通过记录集类成员函数AddNew()实现的。添加用户按钮对应的消息函数具体代码参考如下:
代码位置:见光盘中本章源代码的CLICAIDlg类。
- 1 void CLICAIDlg::OnAdd()
- 2 {
- 3 PWSet mySet;
//定义记录集对象 - 4 mySet.Open();
//打开数据表 - 5 REGIST mydlg;
//定义对话框对象 - 6 if(mydlg.DoModal()==IDOK)
//按下【确定】按钮 - 7 {
- 8 while(!mySet.IsEOF())
//记录没有到最后一条 - 9 {
- 10 if(mySet.m_ID!=mydlg.m_id)
//用户名是否相同 - 11 mySet.MoveNext();
//记录后移 - 12 else
- 13 {
- 14 MessageBox("用户名已存在","注意",MB_OK|MB_ICONINFORMATION);
- 15 break;
- 16 }
- 17 }
- 18 if(mydlg.m_id==""||mydlg.m_password==""||mydlg.m_npassword=="")
//没输入数据 - 19 {
- 20 MessageBox("用户名、密码、确认密码不能为空","注意",MB_OK);
- 21 return;
- 22 }
- 23 if(mydlg.m_password!=mydlg.m_npassword)
//确认密码不一致 - 24 {
- 25 MessageBox("两次密码输入不符","注意",MB_OK|MB_ICONINFORMATION);
- 26 return;
- 27 }
- 28 else
//确认密码相同 - 29 {
- 30 …
//省略部分代码 - 31 mySet.AddNew();
//添加一条空记录 - 32 mySet.m_ID=mydlg.m_id;
//给用户名字段赋值 - 33 mySet.m_PASSWORD=mydlg.m_password;
//给密码字段赋值
- 34 mySet.Update();
//保存数据库 - 35 mySet.Requery();
//重新打开数据表 - 36 MessageBox("添加成功","提示",MB_OK|MB_ICONINFORMATION);
//添加成功消息提示 - 37 …
//省略部分代码 - 38 }
- 39 }
- 40 }
第10~27行代码实现了判断数据库中是否已存在要添加的用户名,并判断是否输入了各项数据,对两次输入的密码是否一致也进行了验证。
第28~38行代码实现了新用户的添加,并给出添加成功消息提示。
该对话框的初始化设置和【确定】按钮的实现过程与登录对话框该部分操作相同,在此就不再在重复介绍了,请读者参照源码自己实现。
【责任编辑:
云霞 TEL:(010)68476606】