📄 unit5.~pas
字号:
//客房等级信息设置
//roomprice
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids, Buttons;
type
Troomprice = class(TForm)
BitBtn1: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn2: TBitBtn;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Edit3: TEdit;
Label3: TLabel;
Label4: TLabel;
Edit4: TEdit;
ADOTable1: TADOTable;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
BitBtn5: TBitBtn;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
BitBtn8: TBitBtn;
BitBtn9: TBitBtn;
BitBtn10: TBitBtn;
ADOConnection1: TADOConnection;
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure ADOTable1AfterScroll(DataSet: TDataSet);
procedure FormActivate(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure Edit6Change(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn9Click(Sender: TObject);
procedure BitBtn10Click(Sender: TObject);
procedure FormShow(Sender: TObject);
//procedure Edit5Change(Sender: TObject);
// procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure initiate;
procedure loadfromtable;
procedure savetotable;
procedure edit1234visiblefalse;
procedure edit1234visibletrue;
procedure edit5678visiblefalse;
procedure edit5678visibletrue;
procedure edit5678toedit1234;
procedure bitbtn78910enabletrue;
procedure bitbtn78910enablefalse;
// procedure edit5678nulltrueorfalse;
procedure edit1234toedit5678;
end;
var
roomprice: Troomprice;
implementation
{$R *.dfm}
procedure Troomprice.bitbtn78910enablefalse;
begin
bitbtn7.Enabled:=false;
bitbtn8.Enabled:=false;
bitbtn9.Enabled:=false;
bitbtn10.Enabled:=false;
end;
procedure Troomprice.bitbtn78910enabletrue;
begin
bitbtn7.Enabled:=true;
bitbtn8.Enabled:=true;
bitbtn9.Enabled:=true;
bitbtn10.Enabled:=true;
end;
procedure Troomprice.edit1234toedit5678;
begin
edit5.Text:=edit1.Text;
edit6.Text:=edit2.Text;
edit7.Text:=edit3.Text;
edit8.Text:=datetostr(now);
end;
//procedure Troomprice.edit5678nulltrueorfalse;
//begin
//if edit5.Text='' then
// begin
// Application.MessageBox('客房等级不能为空!','提示信息',mb_ok);
// edit5.SetFocus;
// exit;
// end;
//if edit6.Text='' then
// begin
// Application.MessageBox('客房单价不能为空!','提示信息',mb_ok);
// edit6.SetFocus;
// exit;
// end;
//if edit7.Text='' then
// begin
// Application.MessageBox('客房物品不能为空!','提示信息',mb_ok);
// edit7.SetFocus;
// exit;
// end;
//end;
procedure Troomprice.edit1234visiblefalse;
begin
edit1.Visible:=false;
edit2.Visible:=false;
edit3.Visible:=false;
edit4.Visible:=false;
end;
procedure Troomprice.edit1234visibletrue;
begin
edit1.Visible:=true;
edit2.Visible:=true;
edit3.Visible:=true;
edit4.Visible:=true;
end;
procedure Troomprice.edit5678visiblefalse;
begin
edit5.Visible:=false;
edit6.Visible:=false;
edit7.Visible:=false;
edit8.Visible:=false;
end;
procedure Troomprice.edit5678visibletrue;
begin
edit5.Visible:=true;
edit6.Visible:=true;
edit7.Visible:=true;
edit8.Visible:=true;
end;
procedure Troomprice.edit5678toedit1234;
begin
edit1.Text:=edit5.Text;
edit2.Text:=edit6.Text;
edit3.Text:=edit7.Text;
edit4.Text:=datetostr(now);
end;
procedure Troomprice.initiate;
begin
edit5.Text:='';
edit6.Text:='0';
edit7.Text:='';
edit8.Text:=datetostr(now);
edit8.Enabled:=false;
adotable1.Active:=false;
adotable1.TableName:='客房价格表';
adotable1.Active:=true;
end;
procedure Troomprice.loadfromtable;
begin
Edit1.Text:=AdoTable1.fieldbyname('客房等级').asstring;
Edit2.Text:=IntToStr(AdoTable1.fieldbyname('客房单价').asInteger);
Edit3.Text:=AdoTable1.fieldbyname('客房物品').asstring;
Edit4.Text:=DateToStr(AdoTable1.fieldbyname('日期').asDateTime);
end;
procedure Troomprice.savetotable;
begin
AdoTable1.Edit;
AdoTable1.FieldByName('客房等级').asstring:=edit1.Text;
AdoTable1.FieldByName('客房单价').asInteger:=StrToInt(edit2.Text);
AdoTable1.FieldByName('客房物品').asstring:=edit3.Text;
AdoTable1.FieldByName('日期').asDateTime:=StrToDate(edit4.Text);
AdoTable1.Post;
end;
procedure Troomprice.BitBtn2Click(Sender: TObject);
begin
if Messagedlg('确定想增加一条新记录!',mtconfirmation,[mbok,mbcancel],0)=mrok then
begin
dbgrid1.Enabled:=false;
bitbtn78910enablefalse;
edit1234visiblefalse;
edit5678visibletrue;
initiate;
bitbtn1.Enabled:=true;
bitbtn2.Enabled:=false;
bitbtn3.Enabled:=false;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=true;
bitbtn5.Caption:='取消增加';
bitbtn6.Enabled:=false;
end;
end;
procedure Troomprice.BitBtn4Click(Sender: TObject);
begin
dbgrid1.Enabled:=true;
initiate;
edit5678visiblefalse;
edit1234visibletrue;
edit5.Enabled:=true;
adotable1.Active:=false;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn3.Enabled:=true;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=false;
bitbtn5.Caption:='取消';
bitbtn6.Enabled:=true;
bitbtn78910enabletrue;
adotable1.Close;
close;
end;
procedure Troomprice.BitBtn1Click(Sender: TObject);
begin
if trim(edit5.Text)='' then
begin
Application.MessageBox('客房等级不能为空!','提示信息',mb_ok);
edit5.SetFocus;
exit;
end;
if trim(edit6.Text)='' then
begin
Application.MessageBox('客房单价不能为空!','提示信息',mb_ok);
edit6.SetFocus;
exit;
end;
if trim(edit7.Text)='' then
begin
Application.MessageBox('客房物品不能为空!','提示信息',mb_ok);
edit7.SetFocus;
exit;
end;
//adotable1.Active :=false;
//adotable2.Active:=true;
//edit5678nulltrueorfalse;
//loadfromtable;
if bitbtn5.Caption='取消增加'then
begin
if adotable1.Locate('客房等级',edit5.Text,[]) then
begin
Application.MessageBox('该客房等级已存在,请重新输入客房等级!','提示信息',mb_ok);
edit5.Text:='';
edit5.SetFocus;
//edit5678nulltrueorfalse;
// adotable2.Active:=false;
//adotable1.Active:=true;
exit;
end
else
begin
//adotable2.Active:=false;
//adotable1.Active:=true;
//edit1.Text:=edit5.Text;
//edit5678nulltrueorfalse;
adotable1.Append;
edit5678toedit1234;
savetotable;
//edit1.Enabled:=false;
//edit2.Enabled:=false;
//edit3.Enabled:=false;
Application.MessageBox('该记录已保存成功!','提示信息',mb_ok);
dbgrid1.Enabled:=true;
edit5678visiblefalse;
edit1234visibletrue;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn3.Enabled:=true;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=false;
bitbtn5.Caption:='取消';
bitbtn6.Enabled:=true;
bitbtn78910enabletrue;
end;
end
else
if bitbtn5.Caption='取消修改'then
begin
edit5678toedit1234;
savetotable;
Application.MessageBox('该记录已保存成功!','提示信息',mb_ok);
dbgrid1.Enabled:=true;
edit5678visiblefalse;
edit1234visibletrue;
edit5.Enabled:=true;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn3.Enabled:=true;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=false;
bitbtn5.Caption:='取消';
bitbtn6.Enabled:=true;
bitbtn78910enabletrue;
end;
//end;
end;
procedure Troomprice.FormCreate(Sender: TObject);
begin
initiate;
//adotable1.Active:=true;
edit5678visiblefalse;
edit1234visibletrue;
edit5.Enabled:=true;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn3.Enabled:=true;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=false;
bitbtn5.Caption:='取消';
bitbtn6.Enabled:=true;
end;
procedure Troomprice.BitBtn3Click(Sender: TObject);
var
adodataset1:Tadodataset;
begin
if adotable1.RecordCount=0 then
begin
showmessage('已无客房等级信息!');
bitbtn3.Enabled:=false;
bitbtn6.Enabled:=false;
exit;
end
else
begin
adodataset1:=TAdodataSet.Create(self);
adodataset1.Connection:=adoconnection1;
adodataset1.Close;
adodataset1.Parameters.clear;
adodataset1.Parameters.AddParameter;
adodataset1.Parameters[0].Name:='s0';
adodataset1.Parameters[0].DataType:=ftstring;
adodataset1.Parameters[0].Size:=10;
adodataset1.Parameters[0].Direction:=pdinput;
adodataset1.Parameters[0].Value:=adotable1.FieldValues['客房等级'];
adodataset1.CommandText:='select *from 客房管理 where 客房等级=:s0';
adodataset1.Active:=true;
if adodataset1.RecordCount=0 then
begin
if Messagedlg('确定要删除此条记录!',mtwarning,[mbok,mbcancel],0)=mrok then
begin
adotable1.Delete;
Application.MessageBox('记录已删除!','提示信息',mb_ok);
if adotable1.RecordCount=0 then
begin
showmessage('已无客房等级信息!');
bitbtn3.Enabled:=false;
bitbtn6.Enabled:=false;
end
else
adotable1.Recordset.MoveFirst;
end;
end
else
showmessage('此等级信息正在使不能删除!');
adodataset1.Close;
end;
end;
procedure Troomprice.ADOTable1AfterScroll(DataSet: TDataSet);
begin
loadfromtable;
end;
procedure Troomprice.FormActivate(Sender: TObject);
begin
if adotable1.RecordCount=0 then
begin
bitbtn3.Enabled:=false;
bitbtn6.Enabled:=false;
bitbtn78910enablefalse;
showmessage('已无客房等级信息!');
end;
initiate;
if ADOTable1.Recordset.RecordCount>0 then
LoadFromTable;
end;
procedure Troomprice.BitBtn6Click(Sender: TObject);
begin
dbgrid1.Enabled:=false;
bitbtn78910enablefalse;
LoadFromTable;
edit1234toedit5678;
edit5678visibletrue;
edit1234visiblefalse;
edit5.Enabled:=false;
bitbtn1.Enabled:=true;
bitbtn2.Enabled:=false;
bitbtn3.Enabled:=false;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=true;
bitbtn5.Caption:='取消修改';
bitbtn6.Enabled:=false;
end;
procedure Troomprice.BitBtn5Click(Sender: TObject);
begin
if adotable1.RecordCount=0 then
begin
bitbtn3.Enabled:=false;
bitbtn6.Enabled:=false;
bitbtn1.Enabled:=false;
bitbtn5.Enabled:=false;
bitbtn5.Caption:='取消';
bitbtn78910enabletrue;
bitbtn2.Enabled:=true;
exit;
end
else
begin
initiate;
dbgrid1.Enabled:=true;
edit5678visiblefalse;
edit1234visibletrue;
edit5.Enabled:=true;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn3.Enabled:=true;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=false;
bitbtn5.Caption:='取消';
bitbtn6.Enabled:=true;
bitbtn78910enabletrue;
end;
end;
procedure Troomprice.Edit6Change(Sender: TObject);
var
xx,yy:string;
len:integer;
begin
if edit6.Text<>'' then
begin
xx:=edit6.Text;
len:=length(xx);
yy:=copy(xx,len,1);
if (yy<'0') or (yy>'9') then
begin
showmessage('您输入了无效的值!');
edit6.Text:='';
exit;
end;
end;
end;
procedure Troomprice.FormClose(Sender: TObject; var Action: TCloseAction);
begin
initiate;
edit5678visiblefalse;
edit1234visibletrue;
edit5.Enabled:=true;
adotable1.Active:=false;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn3.Enabled:=true;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=false;
bitbtn5.Caption:='取消';
bitbtn6.Enabled:=true;
bitbtn78910enabletrue;
adotable1.Close;
close;
dbgrid1.Enabled:=true;
end;
procedure Troomprice.BitBtn7Click(Sender: TObject);
begin
if not adotable1.Bof then
begin
adotable1.First;
Application.MessageBox('已到第一条记录!','提示信息',mb_ok);
bitbtn7.Enabled:=false;
bitbtn8.enabled:=false;
bitbtn9.enabled:=true;
bitbtn10.enabled:=true;
end
else
begin
Application.MessageBox('已到第一条记录!','提示信息',mb_ok);
bitbtn7.enabled:=false;
bitbtn8.enabled:=false;
bitbtn9.enabled:=true;
bitbtn10.enabled:=true;
end;
end;
procedure Troomprice.BitBtn8Click(Sender: TObject);
begin
if adotable1.Bof then
begin
Application.MessageBox('已到第一条记录!','提示信息',mb_ok);
bitbtn7.enabled:=false;
bitbtn8.enabled:=false;
bitbtn9.enabled:=true;
bitbtn10.enabled:=true;
end
else
begin
adotable1.Prior;
bitbtn7.enabled:=true;
bitbtn8.enabled:=true;
bitbtn9.enabled:=true;
bitbtn10.enabled:=true;
end;
end;
procedure Troomprice.BitBtn9Click(Sender: TObject);
begin
if adotable1.Eof then
begin
Application.MessageBox('已到最后一条记录!','提示信息',mb_ok);
bitbtn7.enabled:=true;
bitbtn8.enabled:=true;
bitbtn9.enabled:=false;
bitbtn10.enabled:=false;
end
else
begin
adotable1.Next;
bitbtn7.enabled:=true;
bitbtn8.enabled:=true;
bitbtn9.enabled:=true;
bitbtn10.enabled:=true;
end;
end;
procedure Troomprice.BitBtn10Click(Sender: TObject);
begin
if not adotable1.Eof then
begin
adotable1.Last;
Application.MessageBox('已到最后一条记录!','提示信息',mb_ok);
bitbtn7.enabled:=true;
bitbtn8.enabled:=true;
bitbtn9.enabled:=false;
bitbtn10.enabled:=false;
end
else
begin
Application.MessageBox('已到最后一条记录!','提示信息',mb_ok);
bitbtn7.enabled:=true;
bitbtn8.enabled:=true;
bitbtn9.enabled:=false;
bitbtn10.enabled:=false;
end;
end;
procedure Troomprice.FormShow(Sender: TObject);
begin
initiate;
//adotable1.Active:=true;
edit5678visiblefalse;
edit1234visibletrue;
edit5.Enabled:=true;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn3.Enabled:=true;
bitbtn4.Enabled:=true;
bitbtn5.Enabled:=false;
bitbtn5.Caption:='取消';
bitbtn6.Enabled:=true;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -