📄 a_user.pas
字号:
unit a_user;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, DBCtrls, Db;
type
Tuserb = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Label3: TLabel;
Edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Label4: TLabel;
Edit4: TEdit;
DataSource1: TDataSource;
ListBox1: TListBox;
Label5: TLabel;
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Edit1Enter(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Edit4KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit1Exit(Sender: TObject);
procedure Edit3KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormShow(Sender: TObject);
procedure DBListBox1Click(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
procedure show();
procedure ListBox1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
userb: Tuserb;
implementation
uses datamodule;
{$R *.DFM}
procedure Tuserb.Button2Click(Sender: TObject);
begin
edit1.text:='';
edit2.text:='';
edit3.text:='';
datamodule1.user.append;
edit1.setfocus;
end;
procedure Tuserb.Button3Click(Sender: TObject);
begin
label4.visible:=true;
edit4.visible:=true;
datamodule1.user.edit;
edit4.setfocus;
end;
procedure Tuserb.Button4Click(Sender: TObject);
begin
if application.messagebox('你确定要删除此记录吗?','程序执行确认',mb_yesno+mb_defbutton2+mb_iconstop+mb_applmodal)=idyes then
begin
datamodule1.user.Delete;
edit1.text:='';
show();
end;
end;
procedure Tuserb.Edit1Enter(Sender: TObject);
begin
with (sender as tedit) do
color:=cllime;
end;
procedure Tuserb.Button1Click(Sender: TObject);
var
user_str:string;
begin
if not (datamodule1.user.State in [dsinsert,dsedit]) then
begin
showmessage('请先按新增或修改,谢谢');
listbox1.setfocus;
end
else
if edit2.text<>edit3.text then
begin
showmessage('输入的密码和密码确认不一致!');
end
else//if
begin
if (datamodule1.user.state in [dsedit]) and (edit4.text<>datamodule1.user.FieldByName('a_pass').asstring) then
showmessage('原密码不对,请重新输入')
else
begin
with datamodule1.user do
begin
fieldbyname('a_user').asstring:=edit1.text;
fieldbyname('a_pass').asstring:=edit2.text;
label4.visible:=false;
edit4.visible:=false;
post;
showmessage('成功保存');
show();
edit1.text:='';
edit2.text:='';
edit3.text:='';
edit4.text:='';
end;
end;//else
if datamodule1.user.State in [dsinsert] then
begin
with datamodule1.user do
begin
fieldbyname('a_user').asstring:=edit1.text;
fieldbyname('a_pass').asstring:=edit2.text;
label4.visible:=false;
edit4.visible:=false;
post;
showmessage('成功保存');
show();
edit1.text:='';
edit2.text:='';
edit3.text:='';
edit4.text:='';
end;//with
end;//if
end;
end;
procedure Tuserb.Edit4KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
edit2.SetFocus;
end;
procedure Tuserb.Edit1Exit(Sender: TObject);
begin
with (sender as tedit) do
color:=clwhite;
end;
procedure Tuserb.Edit3KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
button1.click;
end;
procedure Tuserb.FormShow(Sender: TObject);
begin
label4.visible:=false;
edit4.visible:=false;
datamodule1.user.close;
datamodule1.user.open;
listbox1.Items.Clear;
show();
listbox1.SetFocus;
end;
procedure tuserb.show();
begin
listbox1.items.clear;
with datamodule1.user do
begin
close;
sql.clear;
sql.add('select *from a_user');
prepare;
open;
end;
while not datamodule1.user.eof do
begin
listbox1.Items.Add(datamodule1.user.fieldbyname('a_user').asstring);
datamodule1.user.Next;
end;//while
end;
procedure Tuserb.DBListBox1Click(Sender: TObject);
var
userstr:string;
begin
userstr:='select *from a_user where a_user='+''''+listbox1.Items[listbox1.itemindex]+'''';
with datamodule1.user do
begin
close;
sql.clear;
sql.add(userstr);
prepare;
open;
end;
edit1.text:=datamodule1.user.fieldbyname('a_user').asstring;
end;
procedure Tuserb.ListBox1Click(Sender: TObject);
var
userstr:string;
begin
userstr:='select *from a_user where a_user='+''''+listbox1.Items[listbox1.itemindex]+'''';
with datamodule1.user do
begin
close;
sql.clear;
sql.add(userstr);
prepare;
open;
end;
edit1.text:=datamodule1.user.fieldbyname('a_user').asstring;
end;
procedure Tuserb.ListBox1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=107 then
begin
button2.click;
edit1.setfocus;
end;
if key=109 then
button4.click;
if key=69 then
begin
button3.click;
edit4.setfocus;
end;
end;
procedure Tuserb.Edit1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
edit2.setfocus;
end;
procedure Tuserb.Edit2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
edit3.setfocus;
end;
procedure Tuserb.FormClose(Sender: TObject; var Action: TCloseAction);
begin
self.release;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -