⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 danjia.pas

📁 房屋出租信息管理系统,房屋出租信息的录入、查询、删除以及用户管理等功能
💻 PAS
字号:
unit DanJia;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DBCtrls, StdCtrls, Buttons, ExtCtrls, Grids, DBGrids, ComCtrls,
  Mask, DB, ADODB;

type
  TDanJiaForm = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    bitbtn_insert: TBitBtn;
    bitbtn_modify: TBitBtn;
    bitbtn_delete: TBitBtn;
    bitbtn_post: TBitBtn;
    bitbtn_cancel: TBitBtn;
    DBNavigator1: TDBNavigator;
    Panel3: TPanel;
    DBGrid1: TDBGrid;
    Panel4: TPanel;
    Label1: TLabel;
    Label3: TLabel;
    Label6: TLabel;
    DS_Tj: TDataSource;
    ADQ_Tj: TADOQuery;
    ADOQry_update: TADOQuery;
    Label2: TLabel;
    Com_Dw: TComboBox;
    ADOQry_insert: TADOQuery;
    Ed_bh: TEdit;
    Ed_Name: TEdit;
    Ed_Dj: TEdit;
    bitbtn_quit: TBitBtn;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure bitbtn_postClick(Sender: TObject);
    procedure bitbtn_quitClick(Sender: TObject);
    procedure bitbtn_modifyClick(Sender: TObject);
    procedure bitbtn_insertClick(Sender: TObject);
    procedure bitbtn_deleteClick(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure bitbtn_cancelClick(Sender: TObject);
  private
    { Private declarations }
  public
     Select_flag:integer;
     procedure cleardata;
     procedure enabledAdd;
     procedure enabledfalse;
     procedure AddData;
    { Public declarations }
  end;

var
  DanJiaForm: TDanJiaForm;

implementation

uses DataModule;

{$R *.dfm}
procedure TdanjiaForm.cleardata ;
begin
  //Ed_bh.Clear ;
  Ed_Name.Clear ;
  Ed_Dj.Clear ;
end;
procedure TDanjiaForm.enabledAdd ;
begin
  bitbtn_insert.Enabled :=false;
  bitbtn_delete.Enabled :=false;
  bitbtn_post.Enabled   :=true;
  bitbtn_cancel.Enabled :=true;
  Ed_Name.Enabled       :=true;
  Com_Dw.Enabled        :=true;
  Ed_Dj.Enabled         :=true;
  //Ed_bh.Enabled         :=true;
end;
procedure TDanJiaForm.enabledfalse ;
begin
  Com_Dw.Enabled   :=false;
  Ed_Dj.Enabled    :=false;
  Ed_bh.Enabled    :=false;
  Com_Dw.Enabled   :=false;
  Ed_Name.Enabled  :=false;
end;
procedure TDanJiaForm.AddData ;
begin
   Ed_Name.Text :=ADQ_Tj.FieldByName('sfname').Text;
   Com_Dw.Text  :=ADQ_Tj.FieldByName('dw').Text;
   Ed_Dj.Text   :=ADQ_Tj.FieldByName('price').Text;
   Ed_bh.Text   :=ADQ_Tj.FieldByName('djid').Value ;
end;
procedure TDanJiaForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 Action:=cafree;
 DanJiaForm:=nil; 
end;

procedure TDanJiaForm.FormCreate(Sender: TObject);
begin
  ADQ_Tj.Close ;
  ADQ_Tj.Open ;
end;

procedure TDanJiaForm.bitbtn_postClick(Sender: TObject); 
begin
 try
  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('djid').Value   :=Ed_bh.text ;
        ADOQry_insert.Parameters.ParamByName('sfname').Value :=Ed_Name.Text ;
        ADOQry_insert.Parameters.ParamByName('dw').Value     :=Com_Dw.Text;
        ADOQry_insert.Parameters.ParamByName('price').Value  :=Ed_Dj.Text;
        ADOQry_insert.ExecSQL;
        DB_module.ADOCon.CommitTrans;
        showmessage('保存成功!');
    if  ADQ_Tj.Active then
        ADQ_Tj.Close;
        ADQ_Tj.Open ;
    end
  else if select_flag=2 then
  begin
  if  ADOQry_update.Active then
        ADOQry_update.Close;
        //ADOQry_update.Parameters.ParamByName('djid').Value   :=Ed_bh.Text ;
        ADOQry_update.Parameters.ParamByName('sfname').Value :=Ed_Name.Text ;
        ADOQry_update.Parameters.ParamByName('dw').Value     :=Com_Dw.Text;
        ADOQry_update.Parameters.ParamByName('price').Value  :=Ed_Dj.Text;
        ADOQry_update.Parameters.ParamByName('oldDjid').value:=ADQ_Tj.FieldByName('Djid').Value ;
        ADOQry_update.ExecSQL;
        DB_module.ADOCon.CommitTrans;
        showmessage('修改成功!');
   if  ADQ_Tj.Active then
        ADQ_Tj.Close;
        ADQ_Tj.Open ;
 end
 except
  begin
    MessageBox(0,'操作失败,用户可能插入了相同的编号!','',MB_OK+MB_ICONERROR);
    DB_module.ADOCon.RollbackTrans;
    exit;
  end;
end;
  enabledfalse ;
  bitbtn_insert.Enabled:=true;
end;

procedure TDanJiaForm.bitbtn_quitClick(Sender: TObject);
begin
  close;
end;

procedure TDanJiaForm.bitbtn_modifyClick(Sender: TObject);
begin
  Select_flag:=2;
  enabledAdd ;
  AddData;
end;

procedure TDanJiaForm.bitbtn_insertClick(Sender: TObject);
begin
  select_flag:=1;
  enabledAdd;
  cleardata;
  Ed_Name.SetFocus ;
end;

procedure TDanJiaForm.bitbtn_deleteClick(Sender: TObject);
begin
 try
   if DB_module.ADOCon.InTransaction then DB_module.ADOCon.RollbackTrans ;
     DB_module.ADOCon.BeginTrans;
   if ADQ_Tj.RecordCount >0 then
      begin
        if (MessageBox(Handle,'确实要删除该房间吗?','警告',MB_YESNO+MB_ICONWARNING)=IDYES) then
           ADQ_Tj.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 TDanJiaForm.DBGrid1CellClick(Column: TColumn);
begin
 AddData;
end;

procedure TDanJiaForm.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;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -