📄 user.~pas
字号:
unit User;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ComCtrls;
type
TCaruser = class(TForm)
Label1: TLabel;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
Panel5: TPanel;
Panel6: TPanel;
Panel7: TPanel;
Panel8: TPanel;
Panel9: TPanel;
Label3: TLabel;
Label2: TLabel;
Label4: TLabel;
Label5: TLabel;
ComboBoxEx1: TComboBoxEx;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
Panel10: TPanel;
procedure FormShow(Sender: TObject);
procedure chkedit;
procedure editshow(I:integer);
procedure Panel1Click(Sender: TObject);
procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Panel1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Panel2Click(Sender: TObject);
procedure Panel3Click(Sender: TObject);
procedure Panel4Click(Sender: TObject);
procedure Panel8Click(Sender: TObject);
procedure Panel6Click(Sender: TObject);
procedure Panel7Click(Sender: TObject);
procedure Panel5Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure ComboBoxEx1KeyPress(Sender: TObject; var Key: Char);
procedure Panel10Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Caruser: TCaruser;
olduserID:string;
editreadonly,insertorupdate:boolean;
implementation
uses unit1,unit2;
{$R *.dfm}
procedure TCaruser.FormShow(Sender: TObject);
begin
editreadonly:=true;
chkedit;
insertorupdate:=true;
comboboxex1.ItemIndex:=0;
with datamodule2.carclassQ do
begin
close;
sql.Clear;
sql.Add('select * from Users');
open;
olduserid:=fieldbyname('UserID').AsString;
edit1.Text:=fieldbyname('UserID').AsString;
edit2.Text:=fieldbyname('upassword').AsString;
comboboxex1.ItemIndex:=fieldbyname('UserPic').AsInteger;
radiobutton1.Checked:=fieldbyname('ismanager').AsBoolean;
radiobutton2.Checked:=not fieldbyname('ismanager').AsBoolean;
end;
end;
procedure Tcaruser.chkedit;
begin
if editreadonly then
begin
panel6.Enabled:=true;
panel6.Color:=clmoneygreen;
panel7.Enabled:=true;
panel7.Color:=clmoneygreen;
panel1.Enabled:=true;
panel1.Color:=clmoneygreen;
panel2.Enabled:=true;
panel2.Color:=clmoneygreen;
panel3.Enabled:=true;
panel3.Color:=clmoneygreen;
panel4.Enabled:=true;
panel4.Color:=clmoneygreen;
edit1.enabled:=false;
edit2.enabled:=false;
edit3.enabled:=false;
radiobutton1.Enabled:=false;
radiobutton2.Enabled:=false;
comboboxex1.enabled:=false;
edit1.color:=clinfobk;
edit2.color:=clinfobk;
edit3.color:=clinfobk;
comboboxex1.color:=clinfobk;
panel5.Caption:='添加';
end
else
begin
panel6.Enabled:=false;
panel6.Color:=clwindow;
panel1.Enabled:=false;
panel1.Color:=clwindow;
panel2.Enabled:=false;
panel2.Color:=clwindow;
panel3.Enabled:=false;
panel3.Color:=clwindow;
panel4.Enabled:=false;
panel4.Color:=clwindow;
panel7.Enabled:=false;
panel7.Color:=clwindow;
edit1.enabled:=true;
edit2.enabled:=true;
edit3.enabled:=true;
radiobutton1.Enabled:=true;
radiobutton2.Enabled:=true;
comboboxex1.enabled:=true;
edit1.color:=clwindow;
edit2.color:=clwindow;
edit3.color:=clwindow;
comboboxex1.color:=clwindow;
panel5.Caption:='保存';
end;
end;
procedure Tcaruser.editshow(I:integer);
begin
case I of
1: datamodule2.CarclassQ.First;
2: datamodule2.CarclassQ.Prior;
3: datamodule2.CarclassQ.next;
4: datamodule2.CarclassQ.Last;
end;
with datamodule2.carclassQ do
begin
olduserid:=fieldbyname('UserID').AsString;
edit1.Text:=fieldbyname('UserID').AsString;
edit2.Text:=fieldbyname('upassword').AsString;
comboboxex1.ItemIndex:=fieldbyname('UserPic').AsInteger;
radiobutton1.Checked:=fieldbyname('ismanager').AsBoolean;
radiobutton2.Checked:=not fieldbyname('ismanager').AsBoolean;
end;
end;
procedure TCaruser.Panel1Click(Sender: TObject);
begin
if not datamodule2.carclassq.Bof then
editshow(1)
else showmessage('已经是首记录了');
end;
procedure TCaruser.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Tpanel(sender).BevelOuter:=bvLowered;
end;
procedure TCaruser.Panel1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
tpanel(sender).BevelOuter:=bvSpace;
end;
procedure TCaruser.Panel2Click(Sender: TObject);
begin
if not datamodule2.carclassQ.Bof then
editshow(2)
else
showmessage('您已经在首记录了!!');
end;
procedure TCaruser.Panel3Click(Sender: TObject);
begin
if not datamodule2.carclassQ.Eof then
editshow(3)
else
showmessage('您已经在首记录了!!');
end;
procedure TCaruser.Panel4Click(Sender: TObject);
begin
if not datamodule2.CarclassQ.Eof then
editshow(4)
else showmessage('已经是末记录');
end;
procedure TCaruser.Panel8Click(Sender: TObject);
begin
insertorupdate:=true;
editreadonly:=true;
chkedit;
caruser.FormShow(sender);
end;
procedure TCaruser.Panel6Click(Sender: TObject);
begin
if datamodule2.CarclassQ.RecordCount > 0 then
begin
insertorupdate:=false;
editreadonly:=false;
chkedit;
edit1.SetFocus;
end
else showmessage('无记录');
end;
procedure TCaruser.Panel7Click(Sender: TObject);
begin
if ((datamodule2.carclassQ.RecordCount >0) and (messagebox(caruser.Handle,'确定要删除吗?','提示',MB_YESNO) = ID_YES)) then
begin
with datamodule2.CarclassQ do
begin
close;
sql.Clear;
sql.Add('delete from users.dbf where userid=:olduserid');
parambyname('olduserid').value:=olduserid;
execsql;
end;
caruser.FormShow(sender);
chkedit;
end;
end;
procedure TCaruser.Panel5Click(Sender: TObject);
begin
if editreadonly then
begin
edit1.text:='';
edit2.text:='';
edit3.text:='';
editreadonly:=false;
chkedit;
edit1.SetFocus
end
else
begin
if insertorupdate then //添加
begin
if (trim(edit1.Text)='') or (edit2.Text='') or ((edit3.Text)='') or ((edit2.Text) <> (edit3.Text)) then
showmessage('资料不完整或确认密码不正确!!')
else
begin
with datamodule2.CarclassQ do
begin
close;
sql.Clear;
sql.Add('insert into users.dbf');
//sql.Add(' (userid,password,userpic,ismanager)');
sql.Add(' values(:userid1,:password1,:userpic1,:ismanager1)');
parambyname('userid1').AsString:=edit1.Text;
parambyname('password1').AsString:=edit2.text;
parambyname('userpic1').AsCurrency:=comboboxex1.ItemIndex;
parambyname('ismanager1').AsBoolean:=radiobutton1.Checked;
execsql;
end;
caruser.FormShow(sender);
editreadonly:=true;
chkedit;
end;
end
else
if (trim(edit1.Text)='') or (edit2.Text='') or ((edit3.Text)='') or ((edit2.Text) <> (edit3.Text)) then
showmessage('资料不完整或确认密码不正确!!')
else
begin
if (messagebox(caruser.Handle,'确定要修改此记录吗','提示',MB_YESNO)=ID_YES) then
begin //修改
with datamodule2.CarclassQ do
begin
close;
sql.Clear;
sql.Add('update users.dbf set');
sql.Add(' userid=:userid1,Upassword=:password1,userpic=:userpic1');
sql.add(',ismanager=:ismanager1');
sql.Add(' where userid=(:olduserid1)');
parambyname('olduserid1').asstring:=olduserid;
parambyname('userid1').AsString:=edit1.Text;
parambyname('password1').AsString:=edit2.text;
parambyname('userpic1').AsCurrency:=comboboxex1.ItemIndex;
parambyname('ismanager1').AsBoolean:=radiobutton1.Checked;
execsql;
end;
insertorupdate:=true;
caruser.FormShow(sender);
editreadonly:=true;;
chkedit;
end;
end;
end;
end;
procedure TCaruser.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
edit2.SetFocus;
end;
procedure TCaruser.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
edit3.SetFocus;
end;
procedure TCaruser.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
comboboxex1.SetFocus;
end;
procedure TCaruser.ComboBoxEx1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
panel5.SetFocus;
end;
procedure TCaruser.Panel10Click(Sender: TObject);
begin
caruser.Close;
end;
procedure TCaruser.FormCreate(Sender: TObject);
begin
form1.imagelist1.GetIcon(20,caruser.Icon);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -