📄 unit7.pas
字号:
unit Unit7;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, DBCtrls, DB, ADODB, ExtCtrls, Grids, DBGrids,
Buttons, ImgList;
type
TForm7 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DBGrid1: TDBGrid;
ADOTable1: TADOTable;
DataSource1: TDataSource;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
Edit1: TEdit;
Edit2: TEdit;
ADOQuery1: TADOQuery;
procedure FormCanResize(Sender: TObject; var NewWidth,
NewHeight: Integer; var Resize: Boolean);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit2Exit(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBGrid1CellClick(Column: TColumn);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form7: TForm7;
implementation
uses Unit11;
{$R *.dfm}
procedure clearface();
begin
with form7 do
begin
edit1.Clear;
edit2.Clear;
edit1.SetFocus;
adotable1.Open;
end
end;
function check(s1,s2:String):boolean;
begin
check:=false;
if trim(s1)='' then
begin
showmessage('请输入用户类型');
form7.edit1.SetFocus;
end
else if trim(s2)='' then
begin
showmessage('请输入折扣');
form7.edit2.SetFocus;
end
else
check:=true;
end;
procedure TForm7.FormCanResize(Sender: TObject; var NewWidth,
NewHeight: Integer; var Resize: Boolean);
begin
Resize:=false;
end;
procedure TForm7.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in['0'..'9',#008,'.']) then
begin
key:=#0;
messagebox(handle,'有效输入字符为数字与小数点','系统提示',mb_ok+mb_iconinformation);
end
end;
procedure TForm7.Edit2Exit(Sender: TObject);
begin
if trim(edit2.Text)<>'' then
try
strtofloat(edit2.Text)
except
messagebox(handle,'无效数字,请重新输入','系统提示',mb_ok+mb_iconinformation);
edit2.Clear;
edit2.SetFocus;
end;
end;
procedure TForm7.BitBtn1Click(Sender: TObject);
begin
if check(edit1.Text,edit2.Text) then
begin
if adotable1.Locate('customerclass',trim(edit1.Text),[locaseInsensitive]) then
begin
messagebox(handle,'该类型已经存在','系统提示',mb_ok+mb_iconinformation);
edit1.SetFocus;
end
else
begin
adotable1.Edit;
adotable1.AppendRecord([trim(edit1.Text),strtofloat(trim(edit2.Text))]);
clearface();
end;
end
end;
procedure TForm7.BitBtn2Click(Sender: TObject);
begin
if check(edit1.Text,edit2.Text) then
begin
if not adotable1.Locate('customerclass',trim(edit1.Text),[locaseInsensitive]) then
begin
messagebox(handle,'要修改的类型不存在','系统提示',mb_ok+mb_iconinformation);
edit1.SetFocus;
end
else
begin
adotable1.Edit;
adotable1.Fields[1].Value:=strtofloat(trim(edit2.Text));
adotable1.Post;
clearface();
end;
end
end;
procedure TForm7.BitBtn3Click(Sender: TObject);
var
customerclass:String;
begin
if trim(edit1.Text)<>'' then
begin
adotable1.Open;
if adotable1.Locate('customerclass',trim(edit1.Text),[locaseInsensitive]) then
begin //找到了要删除的用户类型
customerclass:=trim(adotable1.Fields[0].Value);
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from stopcard where customerclass=:customerclass');
adoquery1.Parameters.ParamByName('customerclass').Value:=customerclass;
adoquery1.Open; //查找要删除的用户类型是否在使用
if adoquery1.IsEmpty then
begin
adotable1.Delete;
clearface();
end
else
messagebox(handle,'对不起!该类型正在使用'+#10+'只有在没有使用时才能删除','系统提示',mb_ok+mb_iconinformation);
end
else //没有找到要删除的用户类型
begin
messagebox(handle,'没有找到指定的用户类型','系统提示',mb_ok+mb_iconinformation);
edit1.SetFocus;
end;
end
else
begin
messagebox(handle,'请指定要删除的用户类型','系统提示',mb_ok+mb_iconinformation);
edit1.SetFocus;
end;
end;
procedure TForm7.FormActivate(Sender: TObject);
begin
clearface();
end;
procedure TForm7.FormClose(Sender: TObject; var Action: TCloseAction);
begin
adotable1.Close;
end;
procedure TForm7.DBGrid1CellClick(Column: TColumn);
begin
if not adotable1.IsEmpty then
begin
edit1.Text:=trim(adotable1.Fields[0].Value);
edit2.Text:=trim(adotable1.Fields[1].Value);
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -