登陆密码错误,请重新输入!‘,mtInformation,[mbok],0); Edit2.Text:=‘‘; Edit2.SetFocus; end else begin keyname:=Edit1.Text; keyform.Hide; mainform.Show;mainform.WindowState:=wsMaximized; end; end; end; end; §5.7 用户管理功能的实现 5.7.1 用户管理主窗体 图5.7 用户管理主窗体 5.7.2 密码修改窗体模块的实现 图5.8 密码修改窗体 procedure Tkey2form.SpeedButton1Click(Sender: TObject); begin file://密码修改窗口修改按钮事件 if (Edit1.Text=‘‘)or(Edit2.Text=‘‘)or(Edit3.Text=‘‘) then begin MessageDlg(‘请输入完整的信息。‘,mtInformation,[mbok],0); Edit1.SetFocus; end else begin if Not datamoduleform.KeyTable.Locate(‘KeyNo‘,Edit1.Text,[]) then begin MessageDlg(‘原密码输入错误,不能修改新密码!‘,mtInformation,[mbok],0); Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit1.SetFocus; end else begin if Edit2.Text<>Edit3.Text then begin MessageDlg(‘两次密码输入不同,请重新输入新密码!‘,mtInformation,[mbok],0); Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit2.SetFocus; end else begin file://在数据库中修改密码 with datamoduleform.KeyQuery do begin close; SQL.Clear; SQL.Add(‘update key set KeyNo=:KeyNo where KeyName=:KeyName‘); Parameters.ParamByName(‘KeyName‘).Value:=keyname; Parameters.ParamByName(‘KeyNo‘).Value:=Edit2.Text; execSQL; MessageDlg(‘密码修改成功!‘,mtInformation,[mbok],0); key2form.Close; end; end; end; end; end; 5.7.3 用户注册窗体模块的实现 图5.9 用户注册窗体 procedure Tkey3form.SpeedButton1Click(Sender: TObject); begin file://用户注删窗口注删按钮事件 if (Edit1.Text=‘‘)or(Edit2.Text=‘‘)or(Edit3.Text=‘‘) then begin MessageDlg(‘请输入完整的信息!‘,mtInformation,[mbok],0); Edit1.SetFocus; end else begin if datamoduleform.KeyTable.Locate(‘KeyName‘,Edit1.Text,[]) file://判断用户名是否存在,系统不允许用户名重复 then begin MessageDlg(‘用户名已存在,请输入新的用户名和密码!‘, mtInformation,[mbok],0); Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit1.SetFocus; end else begin if Edit2.Text<>Edit3.Text then begin MessageDlg(‘您输入的两个密码不相同,请重新输入!‘,mtInformation,[mbok],0); Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit2.SetFocus; end else begin with datamoduleform.KeyQuery do file://在数据库中添加该用户 begin close; SQL.Clear; SQL.Add(‘insert into Key values(:KeyName,:KeyNo)‘); Parameters.ParamByName(‘KeyName‘).Value:=Edit1.Text; Parameters.ParamByName(‘KeyNo‘).Value:=Edit2.Text; execSQL; end; MessageDlg(‘新用户添加成功,您可以继续添加用户,或按“取消”退出。‘,mtInformation,[mbok],0); Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit1.SetFocus; end; end; end; end; 5.7.4 用户注销窗体模块的实现 图5.10 用户注销窗体 procedure Tkey4form.SpeedButton1Click(Sender: TObject); var s:string; begin file://用户注销窗口注销按钮事件 if (Edit1.Text=‘‘)or(Edit2.Text=‘‘) then MessageDlg(‘请输入完整的信息!‘,mtInformation,[mbok],0) else begin if Not datamoduleform.KeyTable.Locate(‘KeyName‘,Edit1.Text,[]) file://判断用户名是否存在,用户名必须存在,才可以删除 then begin MessageDlg(‘您所输入的用户名不存在,请重新输入或按“取消”退出。‘, mtInformation,[mbok],0); Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit1.SetFocus; end else begin with datamoduleform.KeyQuery do begin close; SQL.Clear; SQL.Add(‘select * from Key where KeyName=:KeyName‘); Parameters.ParamByName(‘KeyName‘).Value:=Edit1.Text; open; s:=FieldValues[‘KeyNo‘]; end; if s<>Edit2.Text file://判断该用户名下的密码是否正确 then begin MessageDlg(‘您所输入的密码不正确,请重新输入或按“取消”退出。‘, mtInformation,[mbok],0); Edit2.Text:=‘‘;Edit2.SetFocus; end else begin file://从数据库中删除该用户 with datamoduleform.KeyQuery do begin close; SQL.Clear; SQL.Add(‘delete from Key where KeyName=:KeyName‘); Parameters.ParamByName(‘KeyName‘).Value:=Edit1.Text; execSQL; end; MessageDlg(‘用户已成功删除,您可以继续删除用户,或按“取消”退出。‘, mtInformation,[mbok],0); Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit1.SetFocus; end; end; end; end; 结束语 本系统是一个面向小型图书企业,具有一定实用性的数据库信息管理系统。它主要完成对图书仓库的一系列管理,包括入库、出库、库存以及员工和供应商信息管理。本系统采 上一页 [11] [12] [13] [14] [15] [16] [17] 下一页
Tags:
|