📄 mc_dlxxdj.pas
字号:
unit MC_DLXXDJ;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
DBCtrls, StdCtrls, Db, Mask, ExtCtrls, Buttons, ExtDlgs, DBTables;
type
TDLXXDJ = class(TForm)
DataSource1: TDataSource;
GroupBox1: TGroupBox;
Label1: TLabel;
DBEdit1: TDBEdit;
Label2: TLabel;
DBEdit2: TDBEdit;
Label3: TLabel;
DBEdit3: TDBEdit;
Label4: TLabel;
DBEdit4: TDBEdit;
Label5: TLabel;
DBEdit5: TDBEdit;
Label6: TLabel;
DBEdit6: TDBEdit;
Label7: TLabel;
Label8: TLabel;
DBMemo1: TDBMemo;
Panel1: TPanel;
DBImage1: TDBImage;
BitBtn11: TBitBtn;
BitBtn10: TBitBtn;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn4: TBitBtn;
BitBtn3: TBitBtn;
DBNavigator1: TDBNavigator;
OpenPictureDialog1: TOpenPictureDialog;
Shape1: TShape;
DBLookupComboBox1: TDBLookupComboBox;
DataSource2: TDataSource;
Query1: TQuery;
Query2: TQuery;
Query2BDEDesigner: TStringField;
Label9: TLabel;
DBEdit7: TDBEdit;
DataSource3: TDataSource;
Label10: TLabel;
DBEdit8: TDBEdit;
BitBtn5: TBitBtn;
Label11: TLabel;
DBEdit9: TDBEdit;
Label12: TLabel;
DBEdit10: TDBEdit;
Label13: TLabel;
DBEdit11: TDBEdit;
Label14: TLabel;
DBEdit12: TDBEdit;
Label15: TLabel;
Label16: TLabel;
DBEdit14: TDBEdit;
Query1BDEDesigner: TStringField;
Query1BDEDesigner2: TStringField;
Query1BDEDesigner3: TStringField;
Query1BDEDesigner4: TStringField;
Query1BDEDesigner5: TIntegerField;
Query1BDEDesigner6: TIntegerField;
Query1BDEDesigner7: TIntegerField;
Query1BDEDesigner8: TStringField;
Query1BDEDesigner9: TStringField;
Query1BDEDesigner10: TMemoField;
Query1BDEDesigner11: TBlobField;
Query1BDEDesigner12: TFloatField;
Query1BDEDesigner13: TDateTimeField;
Query1BDEDesigner14: TDateTimeField;
Query1BDEDesigner15: TStringField;
Query1BDEDesigner16: TStringField;
Query1BDEDesigner17: TIntegerField;
DBLookupComboBox2: TDBLookupComboBox;
DataSource4: TDataSource;
Query3: TQuery;
procedure DBEdit1KeyPress(Sender: TObject; var Key: Char);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn11Click(Sender: TObject);
procedure BitBtn10Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBLookupComboBox1KeyPress(Sender: TObject; var Key: Char);
procedure BitBtn3Click(Sender: TObject);
procedure DBLookupComboBox2KeyPress(Sender: TObject; var Key: Char);
procedure FormShow(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DLXXDJ: TDLXXDJ;
implementation
uses MC_Data, MC_DLLL, MC_MainForm;
{$R *.DFM}
procedure TDLXXDJ.FormShow(Sender: TObject);
begin
if MainForm.Query1.Locate('使用选项','大楼信息登记',[loCaseInsensitive]) then
begin
if MainForm.Query1.FieldByName('读写').AsString='读' then
begin
BitBtn1.Enabled:=False;
BitBtn2.Enabled:=False;
BitBtn3.Enabled:=False;
end;
end;
end;
procedure TDLXXDJ.DBEdit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then PerForm(WM_NEXTDLGCTL,0,0);
end;
procedure TDLXXDJ.BitBtn1Click(Sender: TObject); //添加或取消操作
begin
if BitBtn1.Caption='添加[&I]' then
begin
Query1.Append; //增加一条记录
GroupBox1.Enabled:=True; //数据录入区域可编辑
BitBtn1.Caption:='取消[&U]';
BitBtn2.Caption:='保存[&S]';
BitBtn4.Enabled:=False;
BitBtn3.Enabled:=False;
DBNavigator1.Enabled:=False;
DBEdit1.SetFocus;
End
Else
begin
GroupBox1.Enabled:=False;
BitBtn1.Caption:='添加[&I]';
BitBtn2.Caption:='修改[&E]';
BitBtn4.Enabled:=True;
BitBtn3.Enabled:=True;
DBNavigator1.Enabled:=True; //数据录入区域不可编辑
Query1.Cancel;
end;
end;
procedure TDLXXDJ.BitBtn2Click(Sender: TObject); //修改或保存操作
begin
if BitBtn2.Caption='修改[&E]' then //如果是修改操作
begin
Query1.Edit;
GroupBox1.Enabled:=True;
BitBtn1.Caption:='取消[&U]';
BitBtn2.Caption:='保存[&S]';
BitBtn4.Enabled:=False;
BitBtn3.Enabled:=False;
DBNavigator1.Enabled:=False; //数据录入区域可编辑
DBEdit1.SetFocus;
End
Else //如果是保存操作
begin
if (Length(Query1.FieldByName('大楼编号').AsString)=0) or
(Length(Query1.FieldByName('大楼名称').AsString)=0) or
//(Length(Query1.FieldByName('大楼说明').AsString)=0) or
(Length(Query1.FieldByName('负责人').AsString)=0) or
//(Length(Query1.FieldByName('房屋数量').AsString)=0) or
(Length(Query1.FieldByName('所属区域').AsString)=0) Then
//(Length(Query1.FieldByName('大楼位置').AsString)=0) then //判断输入是否添全
begin
ShowMessage('请将数据信息填写全!!');
End
Else //如果数据添全,保存数据
begin
GroupBox1.Enabled:=False; //数据录入区域不可编辑
BitBtn1.Caption:='添加[&I]';
BitBtn2.Caption:='修改[&E]';
BitBtn4.Enabled:=True;
BitBtn3.Enabled:=True;
DBNavigator1.Enabled:=True;
Query1.Post;
end;
end;
end;
procedure TDLXXDJ.BitBtn4Click(Sender: TObject); //删除大楼信息
begin
If Query1.RecordCount <> 0 Then
if MessageDlg('确认删除['+Query1.FieldByName('大楼名称').AsString+']的信息吗?'
,mtCustom,[mbYes,mbNo],0)=mrYes then Query1.Delete;
end;
procedure TDLXXDJ.BitBtn11Click(Sender: TObject); //添加照片
var Picture1:Tpicture;
begin
Picture1:=TPicture.Create;
If OpenPictureDialog1.Execute Then
begin
Picture1.LoadFromFile(OpenPictureDialog1.Filename);
Query1.FieldByName('照片').Assign(Picture1);
end;
end;
procedure TDLXXDJ.BitBtn10Click(Sender: TObject); //清除图片
begin
Query1.FieldByName('照片').Assign(Nil);
end;
procedure TDLXXDJ.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if Assigned(DLLL) then DLLL.Close;
DLXXDJ.Release;
DLXXDJ:=Nil;
end;
procedure TDLXXDJ.DBLookupComboBox1KeyPress(Sender: TObject;var Key: Char);
begin
if key=#13 then DBEdit5.SetFocus;
end;
procedure TDLXXDJ.BitBtn3Click(Sender: TObject); //浏览数据
begin
If Not Assigned(DLLL) Then
begin
DLLL:=TDLLL.Create(Self);
DLLL.Show;
End
Else
DLLL.Show;
end;
procedure TDLXXDJ.DBLookupComboBox2KeyPress(Sender: TObject;var Key: Char);
begin
if Key=#13 then DBEdit4.SetFocus;
end;
procedure TDLXXDJ.BitBtn5Click(Sender: TObject);
begin
Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -