📄 mainsrc.pas
字号:
unit MainSrc;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ComCtrls, ExtCtrls, StdCtrls, Buttons,
idGlobal,ShellApi, jpeg, Mask, DBCtrls;
const WM_NID=WM_USER+2000;
type
TFormMain = class(TForm)
MainMenu1: TMainMenu;
w1: TMenuItem;
MenuDataBakup: TMenuItem;
MenuDataRestore: TMenuItem;
N2: TMenuItem;
N1: TMenuItem;
MenuExit: TMenuItem;
N3: TMenuItem;
MenuHardwareInterface: TMenuItem;
MenuUserPassword: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
MenuAddItem: TMenuItem;
MenuModifyItem: TMenuItem;
N7: TMenuItem;
MenuDelItem: TMenuItem;
N8: TMenuItem;
MenuSearchItem: TMenuItem;
MenuSearchInfo: TMenuItem;
N9: TMenuItem;
MenuConnect: TMenuItem;
N10: TMenuItem;
MenuHelp: TMenuItem;
MenuAbout: TMenuItem;
ImageMap: TImage;
Look16to20: TBitBtn;
Look21to25: TBitBtn;
Look1to6: TBitBtn;
Look5to10: TBitBtn;
Look11to15: TBitBtn;
Look26to35: TBitBtn;
Look36to50: TBitBtn;
LookAbove70: TBitBtn;
Look50to70: TBitBtn;
EditDataAndTime: TEdit;
Timer1: TTimer;
OpenDialogStore: TOpenDialog;
N21: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
TimerAutoSave: TTimer;
light21to25: TBitBtn;
light26to35: TBitBtn;
light50to70: TBitBtn;
lightAbove70: TBitBtn;
light11to15: TBitBtn;
light36to50: TBitBtn;
light16to20: TBitBtn;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
MenuDeleteInfo: TMenuItem;
light6to10: TBitBtn;
TimerFlashJu: TTimer;
TimerFlashJin: TTimer;
EditNowUser: TEdit;
light1to5: TBitBtn;
procedure MenuExitClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure MenuUserPasswordClick(Sender: TObject);
procedure MenuDataBakupClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure MenuAddItemClick(Sender: TObject);
procedure MenuDelItemClick(Sender: TObject);
procedure MenuModifyItemClick(Sender: TObject);
procedure MenuSearchItemClick(Sender: TObject);
procedure MenuSearchInfoClick(Sender: TObject);
procedure Look1to5Click(Sender: TObject);
procedure Look6to10Click(Sender: TObject);
procedure Look11to15Click(Sender: TObject);
procedure Look21to25Click(Sender: TObject);
procedure Look26to35Click(Sender: TObject);
procedure Look36to50Click(Sender: TObject);
procedure Look50to70Click(Sender: TObject);
procedure LookAbove70Click(Sender: TObject);
procedure Look16to20Click(Sender: TObject);
procedure MenuHardwareInterfaceClick(Sender: TObject);
procedure MenuDataRestoreClick(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure TimerAutoSaveTimer(Sender: TObject);
procedure MenuAboutClick(Sender: TObject);
procedure MenuConnectClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure MenuHelpClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure light1to5Click(Sender: TObject);
procedure light6to10Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure MenuDeleteInfoClick(Sender: TObject);
procedure gray6to10Click(Sender: TObject);
procedure gray1to5Click(Sender: TObject);
procedure TimerFlashJuTimer(Sender: TObject);
procedure TimerFlashJinTimer(Sender: TObject);
private
procedure WMNID(var msg:TMessage);message WM_NID;
procedure AppMinimized(Sender: TObject);
{ Private declarations }
public
{ Public declarations }
end;
var
FormMain: TFormMain;
NotifyIcon:TNotifyIconData;
implementation
{$R *.dfm}
uses
ChangePassSrc, AddBJDataSrc, DelBJDataSrc, ModifyBJDataSrc, BJInfoSrc,QuickReportSrc,
SearchBJDataSrc, SearchBJInfoSrc, BJDataSrc,HardwareInterfaceSrc,InfoReportSrc,
AutoSaveSrc, ConnectCenterSrc, Map1Src, Map2Src, DeleteInfoSrc, PopUpSrc, LogonSrc,AboutSrc;
procedure TFormMain.WMNID(var msg:TMessage);
begin
if not IsWindowEnabled(Handle) then
Exit;
case msg.LParam of
WM_RBUTTONUP: ShowMessage('联网报警中心');
WM_LBUTTONDBLCLK:
begin
FormMain.Visible:=not FormMain.Visible;
end;
End;
End;
procedure TFormMain.MenuExitClick(Sender: TObject);
begin
Close;
end;
procedure TFormMain.FormCreate(Sender: TObject);
begin
ImageMap.Picture.LoadFromFile('picture\map.jpg');
Application.OnMinimize:=AppMinimized;
//AppMinimized(nil);
end;
procedure TFormMain.AppMinimized(Sender: TObject);
begin
if IsWindowEnabled(Handle) then
Hide;
Visible := false;
end;
procedure TFormMain.MenuUserPasswordClick(Sender: TObject);
var
nTemp:Integer;
strStore:string;
textid:textfile;
begin
assignfile(textid, 'DB\N.DAT');
reset(textid);
readln(textid, strStore);
CloseFile(textid);
nTemp := strcomp(pChar('Admin'), pChar(strStore) );
if nTemp <> 0 then
begin
Messagebox(Application.Handle, '只有管理员才能进行用户管理,请以管理员帐号重新登陆','联网报警中心--用户管理',MB_OK);
Exit;
end;
FormChangePass.AddPass.Text := '';
FormChangePass.AddPassCon.Text := '';
FormChangePass.EditNewPass.Text := '';
FormChangePass.EditPassConfirm.Text := '';
FormChangePass.EditUserAdd.Text := '';
ChangePassSrc.FormChangePass.ShowModal();
end;
procedure TFormMain.MenuDataBakupClick(Sender: TObject);
var
strSource:string;
strDest:string;
ret:Boolean;
i, len:Integer;
begin
strSource := 'bj.mdb';
strDest := TimeToStr(time);
len := strLen( PChar(strDest) );
for i:=1 to len do
if strDest[i] = ':' then
begin
strDest[i] := '-';
end;
strDest := 'BackUp\' + DateToStr(date)+'-'+strDest + '.mdb';
ret := CopyFileTo(strSource, strDest);
if ret = TRUE then
begin
MessageBox(Application.Handle, '备份成功!','联网报警中心--数据备份', MB_OK);
end
else
begin
MessageBox(Application.Handle, '备份失败,请再尝试。!','联网报警中心--数据备份', MB_OK);
end;
end;
procedure TFormMain.Timer1Timer(Sender: TObject);
begin
EditDataAndTime.Text := DateToStr(date) + '--' + TimeToStr(Time);
end;
//下面是数据维护代码
//增加报警器
procedure TFormMain.MenuAddItemClick(Sender: TObject);
var
iTemp:Integer;
strBJNum:string;
strSQL:string;
nTemp:Integer;
strStore:string;
textid:textfile;
begin
assignfile(textid, 'DB\N.DAT');
reset(textid);
readln(textid, strStore);
CloseFile(textid);
nTemp := strcomp(pChar('Admin'), pChar(strStore) );
if nTemp <> 0 then
begin
Messagebox(Application.Handle, '只有管理员才能增加,请以管理员帐号重新登陆','联网报警中心--增加报警器档案',MB_OK);
Exit;
end;
FormAddBJData.EditNum.ReadOnly := false;
FormAddBJData.DBEdit1.Enabled := false;
if FormBJData.ADOQuery1.IsEmpty then
FormAddBJData.EditNum.Text := '1'
else
begin
strSQL := 'select * from 报警器档案 order by 报警器编号';
FormBJData.ADOQuery1.Close;
FormBJData.ADOQuery1.SQL.Clear;
FormBJData.ADOQuery1.SQL.Text := strSQL;
FormBJData.ADOQuery1.Open;
FormBJData.ADOQuery1.Last;
FormAddBJData.DBEdit1.Enabled := true;
iTemp := StrToInt(FormAddBJData.DBEdit1.Text) + 1;
strBJNum := IntToStr(iTemp);
FormAddBJData.EditNum.Text := strBJNum;
FormAddBJData.DBEdit1.Enabled := false;
end;
FormAddBJData.EditNum.ReadOnly := true;
FormAddBJData.EditPos.Text := '';
FormAddBJData.EditName.Text := '';
FormAddBJData.EditAddr.Text := '';
FormAddBJData.EditTele.Text := '';
FormAddBJData.EditGuard.Text := '';
FormAddBJData.EditBuildingNum.Text := '';
FormAddBJData.EditOther.Text := '';
FormAddBJData.ShowModal();
end;
//删除报警器
procedure TFormMain.MenuDelItemClick(Sender: TObject);
var
nTemp:Integer;
strStore:string;
textid:textfile;
begin
assignfile(textid, 'DB\N.DAT');
reset(textid);
readln(textid, strStore);
CloseFile(textid);
nTemp := strcomp(pChar('Admin'), pChar(strStore) );
if nTemp <> 0 then
begin
Messagebox(Application.Handle, '只有管理员才能删除,请以管理员帐号重新登陆','联网报警中心--删除报警器档案',MB_OK);
Exit;
end;
FormDelBJData.Edit1.Text := '';
FormDelBJData.DBGrid1.ReadOnly := true ;
FormDelBJData.ShowModal();
end;
//修改报警器
procedure TFormMain.MenuModifyItemClick(Sender: TObject);
var
nTemp:Integer;
strStore:string;
textid:textfile;
begin
assignfile(textid, 'DB\N.DAT');
reset(textid);
readln(textid, strStore);
CloseFile(textid);
nTemp := strcomp(pChar('Admin'), pChar(strStore) );
if nTemp <> 0 then
begin
Messagebox(Application.Handle, '只有管理员才能修改,请以管理员帐号重新登陆','联网报警中心--修改报警器档案',MB_OK);
Exit;
end;
FormDelBJData.Edit1.Text := '';
FormDelBJData.DBGrid1.ReadOnly := false;
FormModifyBJData.ShowModal();
end;
//查询报警器
procedure TFormMain.MenuSearchItemClick(Sender: TObject);
begin
FormSearchBJData.Edit1.Text := '';
FormSearchBJData.DBGrid1.ReadOnly := true;
FormSearchBJData.ShowModal();
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -