📄 fangbasic.~pas
字号:
unit FangBasic;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, Grids, DBGrids, DB, ADODB, DBCtrls;
type
TFangBasicForm = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
bitbtn_insert: TBitBtn;
bitbtn_modify: TBitBtn;
bitbtn_delete: TBitBtn;
bitbtn_post: TBitBtn;
bitbtn_cancel: TBitBtn;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Ed_Fh: TEdit;
Ed_Mj: TEdit;
Com_Fx: TComboBox;
Com_Cx: TComboBox;
Ed_Yz: TEdit;
Ed_Yj: TEdit;
Ed_Sb: TEdit;
ADOQry_insert: TADOQuery;
ADOQry_update: TADOQuery;
DS_FangBasic: TDataSource;
ADQ_FangBasic: TADOQuery;
Panel4: TPanel;
DBNavigator1: TDBNavigator;
Panel3: TPanel;
DBGrid1: TDBGrid;
Label8: TLabel;
Ed_Ljf: TEdit;
ADQ_Ljf: TADOQuery;
bitbtn_quit: TBitBtn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure bitbtn_quitClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure bitbtn_insertClick(Sender: TObject);
procedure bitbtn_cancelClick(Sender: TObject);
procedure bitbtn_modifyClick(Sender: TObject);
procedure bitbtn_deleteClick(Sender: TObject);
procedure bitbtn_postClick(Sender: TObject);
private
{ Private declarations }
public
Select_flag:integer;
procedure cleardata;
procedure enabledAdd;
procedure enabledfalse;
procedure AddData;
{ Public declarations }
end;
var
FangBasicForm: TFangBasicForm;
implementation
uses DataModule;
{$R *.dfm}
procedure TFangBasicForm.cleardata ;
begin
Ed_Fh.Text :='';
Ed_Mj.Text :='';
Com_Fx.Text :='';
Com_Cx.Text :='';
Ed_Yz.Text :='';
Ed_Yj.Text :='';
Ed_Sb.Text :='';
end;
procedure TFangBasicForm.enabledAdd ;
begin
bitbtn_insert.Enabled :=false;
bitbtn_delete.Enabled :=false;
bitbtn_post.Enabled :=true;
bitbtn_cancel.Enabled :=true;
Ed_Fh.Enabled :=true;
Ed_Mj.Enabled :=true;
Com_Fx.Enabled :=true;
Com_Cx.Enabled :=true;
Ed_Yz.Enabled :=true;
Ed_Yj.Enabled :=true;
Ed_Sb.Enabled :=true;
end;
procedure TFangBasicForm.enabledfalse ;
begin
Ed_Fh.Enabled :=false;
Ed_Mj.Enabled :=false;
Com_Fx.Enabled :=false;
Com_Cx.Enabled :=false;
Ed_Yz.Enabled :=false;
Ed_Yj.Enabled :=false;
Ed_Sb.Enabled :=false;
end;
procedure TFangBasicForm.AddData ;
begin
Ed_Fh.Text :=ADQ_FangBasic.FieldByName('fangNO').Text;
Ed_Mj.Text :=ADQ_FangBasic.FieldByName('area').Text;
Com_Fx.Text :=ADQ_FangBasic.FieldByName('housetype').Text;
Com_Cx.Text :=ADQ_FangBasic.FieldByName('facetype').Text;
Ed_Yz.Text :=ADQ_FangBasic.FieldByName('fangprice').Text ;
Ed_Yj.Text :=ADQ_FangBasic.FieldByName('fangya').Text ;
Ed_Sb.Text :=ADQ_FangBasic.FieldByName('Sb').Text ;
end;
procedure TFangBasicForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
action :=cafree;
FangBasicForm:=nil;
end;
procedure TFangBasicForm.bitbtn_quitClick(Sender: TObject);
begin
close;
end;
procedure TFangBasicForm.FormCreate(Sender: TObject);
begin
ADQ_FangBasic.Close ;
ADQ_FangBasic.Open ;
AddData;
ADQ_Ljf.Close ;
ADQ_Ljf.Open ;
Ed_Ljf.Text:=ADQ_Ljf.FieldByName('price').Text;
end;
procedure TFangBasicForm.DBGrid1CellClick(Column: TColumn);
begin
AddData;
end;
procedure TFangBasicForm.bitbtn_insertClick(Sender: TObject);
begin
select_flag:=1;
enabledAdd;
cleardata;
Ed_Fh.SetFocus ;
end;
procedure TFangBasicForm.bitbtn_cancelClick(Sender: TObject);
begin
enabledfalse ;
bitbtn_insert.Enabled:=true;
bitbtn_delete.Enabled:=true;
bitbtn_post.Enabled:=false;
bitbtn_cancel.Enabled:=false;
bitbtn_post.Enabled:=false;
bitbtn_cancel.Enabled:=false;
end;
procedure TFangBasicForm.bitbtn_modifyClick(Sender: TObject);
begin
select_flag:=2;
AddData;
enabledAdd;
end;
procedure TFangBasicForm.bitbtn_deleteClick(Sender: TObject);
begin
try
if DB_module.ADOCon.InTransaction then DB_module.ADOCon.RollbackTrans ;
DB_module.ADOCon.BeginTrans;
if ADQ_FangBasic.RecordCount >0 then
begin
if (MessageBox(Handle,'确实要删除该房间吗?','警告',MB_YESNO+MB_ICONWARNING)=IDYES) then
ADQ_FangBasic.Delete;
DB_module.ADOCon.CommitTrans;
end
else
begin
MessageBox(0,'空记录不能删除!','余科华提示',MB_OK+MB_ICONWARNING);
end;
except
begin
MessageBox(0,'操作房间失败!','错误',MB_OK+MB_ICONERROR);
DB_module.ADOCon.RollbackTrans;
exit;
end;
end;
end;
procedure TFangBasicForm.bitbtn_postClick(Sender: TObject);
begin
try
if Ed_Fh.Text='' then
begin
Application.MessageBox('请填写房号','余科华提示',MB_OK+MB_ICONINFORMATION);
Ed_Fh.SetFocus ;
exit;
end;
if Ed_MJ.Text='' then
begin
Application.MessageBox('请填写房间面积','余科华提示',MB_OK+MB_ICONINFORMATION);
Ed_MJ.SetFocus ;
exit;
end;
if Com_Fx.Text ='' then
begin
Application.MessageBox('请填写户型','余科华提示',MB_OK+MB_ICONINFORMATION);
Com_Fx.SetFocus ;
exit;
end;
if Com_Cx.Text='' then
begin
Application.MessageBox('请填写朝向','余科华提示',MB_OK+MB_ICONINFORMATION);
Com_Cx.SetFocus ;
exit;
end;
if Ed_Yz.Text='' then
begin
Application.MessageBox('请填写月租信息','余科华提示',MB_OK+MB_ICONINFORMATION);
Ed_Yz.SetFocus ;
exit;
end;
if Ed_Yj.Text='' then
begin
Application.MessageBox('请填写押金信息','余科华提示',MB_OK+MB_ICONINFORMATION);
Ed_Yj.SetFocus ;
exit;
end;
if DB_module.ADOCon.InTransaction then DB_module.ADOCon.RollbackTrans ;
DB_module.ADOCon.BeginTrans;
if Select_flag=1 then
begin
if ADOQry_insert.Active then
ADOQry_insert.Close;
ADOQry_insert.Parameters.ParamByName('fangNO').Value :=Ed_Fh.Text ;
ADOQry_insert.Parameters.ParamByName('area').Value:=Ed_Mj.Text;
ADOQry_insert.Parameters.ParamByName('housetype').Value:=Com_Fx.Text;
ADOQry_insert.Parameters.ParamByName('facetype').Value:=Com_cx.Text;
ADOQry_insert.Parameters.ParamByName('fangprice').Value:=Ed_Yz.Text;
ADOQry_insert.Parameters.ParamByName('fangya').Value:=Ed_Yj.Text ;
ADOQry_insert.Parameters.ParamByName('Ljf').Value:=Ed_Ljf.Text ;
ADOQry_insert.Parameters.ParamByName('sb').Value :=Ed_sb.Text ;
ADOQry_insert.ExecSQL;
DB_module.ADOCon.CommitTrans;
showmessage('保存成功!');
if ADQ_FangBasic.Active then
ADQ_FangBasic.Close;
ADQ_FangBasic.Open ;
end
else if select_flag=2 then
begin
if ADOQry_update.Active then
ADOQry_update.Close;
ADOQry_update.Parameters.ParamByName('fangNO').Value :=Ed_Fh.Text ;
ADOQry_update.Parameters.ParamByName('area').Value:=Ed_Mj.Text;
ADOQry_update.Parameters.ParamByName('housetype').Value:=Com_Fx.Text;
ADOQry_update.Parameters.ParamByName('facetype').Value:=Com_cx.Text;
ADOQry_update.Parameters.ParamByName('fangprice').Value:=Ed_Yz.Text;
ADOQry_update.Parameters.ParamByName('fangya').Value:=Ed_Yj.Text ;
ADOQry_update.Parameters.ParamByName('Ljf').Value:=Ed_Ljf.Text ;
ADOQry_update.Parameters.ParamByName('sb').Value :=Ed_sb.Text ;
ADOQry_update.Parameters.ParamByName('oldfangno').value:=ADQ_FangBasic.FieldByName('fangno').Value ;
ADOQry_update.ExecSQL;
DB_module.ADOCon.CommitTrans;
showmessage('修改成功!');
if ADQ_FangBasic.Active then
ADQ_FangBasic.Close;
ADQ_FangBasic.Open ;
end
except
begin
MessageBox(0,'插入一操作房间失败,用户可能插入了相同的用户代号!','',MB_OK+MB_ICONERROR);
DB_module.ADOCon.RollbackTrans;
exit;
end;
end;
enabledfalse ;
bitbtn_insert.Enabled:=true;
bitbtn_delete.Enabled:=true;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -