📄 main.~pas
字号:
ss:string;
begin
if not Spcomm1.PortOpen then
Spcomm1.StartComm;
//try
//strTemp :='~200260E00000'+ #02 + '300' + '010101' +#03;
// strTemp :='~200160E0A006'+ '400'+'015';
strTemp :='~200160E0600A'+ '630'+'0'+'022'+'022';
// strTemp :='~200160430000';//+ '400'+'01';
// strTemp :='~200160430000';//+ '400'+'01';
strTemp :='~200160E0B005'+ '620'+'00';//+'022'+'022';
// strTemp := strTemp + BCC(strTemp);
//strTemp :=strTemp + chk(Copy(strTemp,2,(Length(strTemp)-1) ) ));
ss:=chk(Copy(strTemp,2,(Length(strTemp)-1) ) );
strTemp := strTemp + ss + #13;
if Spcomm1.WriteCommData( PChar(strTemp),Length(strTemp)) = True then
mmo2.Lines.Add('发送成功'+ strTemp);
// finally
//end;
end;
procedure Tfrmain.FormCreate(Sender: TObject);
var
str:string;
i:Integer;
begin
//mxBar.Visible := False;
SetWindowLong(Application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
if Spcomm1.PortOpen then
Spcomm1.StopComm;
grp1.Enabled := False;
GroupBox1.Enabled := False;
GroupBox2.Enabled := False;
GroupBox3.Enabled := False;
GroupBox4.Enabled := False;
GroupBox5.Enabled := False;
GroupBox6.Enabled := False;
GroupBox7.Enabled := False;
conAir.Connected := False;
try
conAir.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;'
+'Data Source=.\Air.mdb;Persist Security Info=False;Jet OLEDB:Database Password="zfu126"';
conAir.Connected := True;
except
ShowMessage('连接数据库失败,找不到数据库文件!!');
Application.Terminate;
end;
with qryNum do
begin
Close;
SQL.Clear;
SQL.Add('select * from AC');
Open;
if not IsEmpty then
begin
First;
iNum := 1;
while not Eof do
begin
Next ;
iNum := iNum + 1;
end;
end;
end;
if iNum >= 1 then
begin
for i:= 1 to iNum -1 do
begin
with qryNum do
begin
Close;
SQL.Clear;
SQL.Add('select name from AC where ACAddress =:name_val');
Parameters.ParamByName('name_val').Value := '0'+ IntToStr(i);
Open;
if not IsEmpty then
begin
First;
str := FieldByName('name').AsString ;
case i of
1:
begin
grp1.Enabled := True;
grp1.Caption := IntToStr(i)+'号'+ str+'空调';
end;
2:
begin
GroupBox1.Enabled := True;
GroupBox1.Caption := IntToStr(i)+'号'+ str+'空调';
end;
3:
begin
GroupBox2.Enabled := True;
GroupBox2.Caption := IntToStr(i)+'号'+ str+'空调' ;
end;
4:
begin
GroupBox3.Enabled := True;
GroupBox3.Caption := IntToStr(i)+'号'+ str+'空调' ;
end;
5:
begin
GroupBox4.Enabled := True;
GroupBox4.Caption := IntToStr(i)+'号'+ str+'空调' ;
end;
6:
begin
GroupBox5.Enabled := True;
GroupBox5.Caption := IntToStr(i)+'号'+ str+'空调' ;
end;
7:
begin
GroupBox6.Enabled := True;
GroupBox6.Caption := IntToStr(i)+'号'+ str+'空调' ;
end;
8:
begin
GroupBox7.Enabled := True;
GroupBox7.Caption := IntToStr(i)+'号'+ str+'空调' ;
end;
end;
end;
end;
end;
end;
for i := iNum to 8 do
begin
case i of
1: grp1.Caption := IntToStr(i)+'号'+ '备用空调';
2:GroupBox1.Caption := IntToStr(i)+'号'+ '备用空调';
3:GroupBox2.Caption := IntToStr(i)+'号'+ '备用空调';
4:GroupBox3.Caption := IntToStr(i)+'号'+ '备用空调';
5:GroupBox4.Caption := IntToStr(i)+'号'+ '备用空调';
6:GroupBox5.Caption := IntToStr(i)+'号'+ '备用空调';
7:GroupBox6.Caption := IntToStr(i)+'号'+ '备用空调';
8:GroupBox7.Caption := IntToStr(i)+'号'+ '备用空调';
end;
end;
tmrTC.Enabled := False;
//F_Login.ShowModal;
end;
procedure SendCycCommand(iTemp:Integer);
var
strtemp:string;
ss:string;
i,iCount:Integer;
add :string;
begin
iCount := 1;
if iTemp <> 0 then
for i :=1 to iTemp -1 do
begin
add :='0'+ IntToStr(i);
strTemp :='~20'+add +'6043'+'0000'; //1号空调 收集运转状态数据
ss:=chk(Copy(strTemp,2,(Length(strTemp)-1) ) );
strTemp := strTemp + ss + #13;
strSendCyc[iCount] := strTemp;
Inc(iCount);
strTemp :='~20'+add +'60E0'+'A006'+'400'+'015'; //读出任意室内容机的累计信息
ss:=chk(Copy(strTemp,2,(Length(strTemp)-1) ) );
strTemp := strTemp + ss + #13;
strSendCyc[iCount] := strTemp;
Inc(iCount);
strTemp :='~20'+add +'60E0'+'D003'+'410'; //读出任意室内容机的累计信息
ss:=chk(Copy(strTemp,2,(Length(strTemp)-1) ) );
strTemp := strTemp + ss + #13;
strSendCyc[iCount] := strTemp;
Inc(iCount);
end;
// strTemp :='~20'+'02'+'6043'+'0000'; //2号空调
// ss:=chk(Copy(strTemp,2,(Length(strTemp)-1) ) );
// strTemp := strTemp + ss + #13;
// strSendCyc[3] := strTemp;
// //注意调试时,可能要改变'015'的值
//
// strTemp :='~20'+'02'+'60E0'+'A006'+'400'+'015'; //读出任意室内容机的累计信息
// ss:=chk(Copy(strTemp,2,(Length(strTemp)-1) ) );
// strTemp := strTemp + ss + #13;
// strSendCyc[4] := strTemp;
end;
procedure Tfrmain.FormClose(Sender: TObject; var Action: TCloseAction);
var
CSThread:TSendThread;
nid:TNotifyIconData;
begin
if Application.MessageBox('您确实要关闭该程序吗?', '提示', MB_OKCANCEL
+ MB_ICONQUESTION + MB_DEFBUTTON2) = IDOK then
begin
//Close;
//frmain.Close;
conAir.Connected := False;
tmrSave.Enabled := False;
if Spcomm1.PortOpen then
Spcomm1.StopComm;
nid.cbSize := SizeOf(nid);
nid.uID := 1;
nid.Wnd := Handle;
Shell_NotifyIcon(NIM_DELETE,@nid);
try
Application.Terminate;
// ShowMessage('asdf');
except
// ShowMessage('说的发生等等等等等等等等');
end;
end
else
begin
bSend := True;
tmrSave.Enabled := True;
Abort;
CSThread.Create(False);
end;
end;
procedure Tfrmain.btn2Click(Sender: TObject);
var
SUSend:TSU;
strTemp:string;
begin
if not Spcomm1.PortOpen then
Spcomm1.StartComm;
SUSend := TSU.Create;
try
//SUSend.PassWordID(edt1.Text);
strTemp := SUSend.GetCOmmand;
Spcomm1.WriteCommData( PChar(strTemp),Length(strTemp));
finally
SUSend.Free;
end;
end;
procedure Tfrmain.mxbLBarHeaders1Buttons0Click(Sender: TObject);
begin
frmIDSet.ShowModal;
end;
procedure Tfrmain.mxbLBarHeaders1Buttons1Click(Sender: TObject);
begin
frmIDShow.ShowModal;
end;
procedure Tfrmain.mxbLBarHeaders4Buttons5Click(Sender: TObject);
begin
frmComm.ShowModal;
end;
procedure Tfrmain.N2Click(Sender: TObject);
begin
if Application.MessageBox('您确实要关闭该程序吗?', '提示', MB_OKCANCEL
+ MB_ICONQUESTION + MB_DEFBUTTON2) = IDOK then
begin
//Close;
//frmain.Close;
end
else
begin
Abort;
end;
end;
procedure Tfrmain.mxBarHeaders4Buttons1Click(Sender: TObject);
begin
F_PP_Modi.ShowModal;
end;
procedure Tfrmain.mxBarHeaders4Buttons0Click(Sender: TObject);
begin
F_Register.ShowModal;
end;
procedure Tfrmain.mxBarHeaders0Buttons2Click(Sender: TObject);
begin
Setting.ShowModal;
end;
procedure Tfrmain.mxBarHeaders0Buttons3Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.mxBarHeaders2Buttons2Click(Sender: TObject);
begin
frmTemChart.ShowModal;
end;
procedure Tfrmain.N7Click(Sender: TObject);
begin
Setting.ShowModal;
end;
procedure Tfrmain.N8Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.N5Click(Sender: TObject);
begin
ShowMessage('协议:中国电信交换【1999】 625基准规格 2007-1-19 19:44');
end;
procedure Tfrmain.N11Click(Sender: TObject);
begin
frmTemChart.ShowModal;
end;
procedure Tfrmain.N17Click(Sender: TObject);
begin
frmADDAC.ShowModal;
end;
procedure Tfrmain.btn123Click(Sender: TObject);
begin
dlgOpenPic1.Execute;
img1.Picture.LoadFromFile(dlgOpenPic1.FileName);
end;
procedure Tfrmain.edtAirState1Change(Sender: TObject);
begin
if edtAirState1.Text = '停止' then
lblAirState1.Color := clRed
else
if edtAirState1.Text = '运转' then
lblAirState1.Color := clGreen;
end;
procedure Tfrmain.edtWaringState1Change(Sender: TObject);
begin
if edtWaringState1.Text = 'OFF' then
lblWaringState1.Color := clGreen
else
if edtWaringState1.Text = 'ON' then
lblWaringState1.Color := clRed;
end;
procedure Tfrmain.lblAirState3DblClick(Sender: TObject);
begin
iClick := 3;
//FrmACRM.lblRMMain.Caption := '3号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.edtAirState2Change(Sender: TObject);
begin
if edtAirState2.Text = '停止' then
lblAirState2.Color := clRed
else
if edtAirState2.Text = '运转' then
lblAirState2.Color := clGreen;
end;
procedure Tfrmain.edtAirState3Change(Sender: TObject);
begin
if edtAirState3.Text = '停止' then
lblAirState3.Color := clRed
else
if edtAirState3.Text = '运转' then
lblAirState3.Color := clGreen;
end;
procedure Tfrmain.N10Click(Sender: TObject);
begin
frmQry.ShowModal;
end;
procedure Tfrmain.mxBarHeaders1Buttons0Click(Sender: TObject);
begin
frmQry.ShowModal;
end;
procedure Tfrmain.imgRT1Click(Sender: TObject);
begin
iClick := 1;
//FrmACRM.lblRMMain.Caption := '1号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.Image1Click(Sender: TObject);
begin
iClick := 2;
//FrmACRM.lblRMMain.Caption := '2号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.Image4Click(Sender: TObject);
begin
iClick := 3;
//FrmACRM.lblRMMain.Caption := '3号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.Image5Click(Sender: TObject);
begin
iClick := 4;
//FrmACRM.lblRMMain.Caption := '4号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.Image6Click(Sender: TObject);
begin
iClick := 5;
//FrmACRM.lblRMMain.Caption := '5号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.Image7Click(Sender: TObject);
begin
iClick := 6;
//FrmACRM.lblRMMain.Caption := '6号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.Image8Click(Sender: TObject);
begin
iClick := 7;
//FrmACRM.lblRMMain.Caption := '7号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.Image9Click(Sender: TObject);
begin
iClick := 8;
//FrmACRM.lblRMMain.Caption := '8号空调远程控制运转/停止操作 ' ;
FrmACRM.ShowModal;
end;
procedure Tfrmain.Image2Click(Sender: TObject);
begin
//setting.dblkcbbACAddress.Text := '00';
iClick := 1;
Setting.ShowModal;
end;
procedure Tfrmain.Image3Click(Sender: TObject);
var
str:string;
begin
iClick := 1;
frmData.ShowModal;
end;
procedure Tfrmain.Image11Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.Image13Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.Image15Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.Image17Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.Image19Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.Image21Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.Image23Click(Sender: TObject);
begin
frmData.ShowModal;
end;
procedure Tfrmain.Image14Click(Sender: TObject);
begin
iClick := 4;
Setting.ShowModal;
end;
procedure Tfrmain.Image10Click(Sender: TObject);
begin
iClick := 2;
Setting.ShowModal;
end;
procedure Tfrmain.Image12Click(Sender: TObject);
begin
iClick := 3;
Setting.ShowModal;
end;
procedure Tfrmain.Image16Click(Sender: TObject);
begin
iClick := 5;
Setting.ShowModal;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -