HP\李良庭
2025-07-08 868daf94f29ce1ffdd799a68c07bb668cd373bcd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
{------------------------------------------------------------------------------}
{µ¥ÔªÃû³Æ£ºuDM.pas                                                             }
{Ä£¿éÃû³Æ£ºÈ«¾ÖÊý¾ÝÄ£Ðͼ¯                                                      }
{Ä£¿é˵Ã÷£º°üÀ¨È«¾Ö¶¨Ê±Æ÷¡¢Êý¾Ý´æ´¢µÈ                                          }
{½¨Á¢ÈÕÆÚ£º2023-10-24                                                          }
{ÐÞ¸ÄÐ޸ģº2024-07-08                                                          }
{°æÈ¨ËùÓУºÀîÁ¼Í¥ liangtingli@outlook.com                                      }
{------------------------------------------------------------------------------}
 
unit uDM;
 
interface
 
uses
  SysUtils, Classes, ExtCtrls, PubUtils;
 
type
  Tdm = class(TDataModule)
    tmClock: TTimer;
    tmManTest: TTimer;
    tmAutoTest: TTimer;
    tmVerify: TTimer;
    tmRegFault: TTimer;
    tmInter: TTimer;
    tmReset: TTimer;
    procedure tmClockTimer(Sender: TObject);
    procedure tmManTestTimer(Sender: TObject);
    procedure tmAutoTestTimer(Sender: TObject);
    procedure tmVerifyTimer(Sender: TObject);
    procedure tmRegFaultTimer(Sender: TObject);
    procedure tmInterTimer(Sender: TObject);
    procedure tmResetTimer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  dm: Tdm;
 
implementation
 
uses
  uMain, global;
 
{$R *.dfm}
 
procedure Tdm.tmClockTimer(Sender: TObject);
begin
  with frmMain do begin
    //×Ô¶¯Ä£Ê½-ʱÖÓ
    ssYear.Value := StrToInt(FormatDateTime('YYYY',Now()));
    ssMonth.Value := StrToInt(FormatDateTime('MM',Now()));
    ssDay.Value := StrToInt(FormatDateTime('DD',Now()));
    ssClock.Time := Now();
 
    //ÊÖ¶¯Ä£Ê½-ʱÖÓ
    ssYear1.Value := StrToInt(FormatDateTime('YYYY',Now()));
    ssMonth1.Value := StrToInt(FormatDateTime('MM',Now()));
    ssDay1.Value := StrToInt(FormatDateTime('DD',Now()));
    ssClock1.Time := Now();
  end;
end;
 
procedure Tdm.tmAutoTestTimer(Sender: TObject);
begin
  frmMain.mtAutoClock.Value := (GetMillisecondTimeStamp - glStartTest)/1000;
end;
 
procedure Tdm.tmManTestTimer(Sender: TObject);
begin
  frmMain.mtManClock.Value := (GetMillisecondTimeStamp - glStartTest)/1000;
end;
 
procedure Tdm.tmVerifyTimer(Sender: TObject);
begin
  frmMain.mtVerifyClock.Value := (GetMillisecondTimeStamp - glStartTest)/1000;
end;
 
//×¢²áʧ°Ü£¬Æô¶¯Í˳öϵͳ¶¨Ê±Æ÷
procedure Tdm.tmRegFaultTimer(Sender: TObject);
begin
  frmMain.Close;
end;
 
//µ÷Õû½Ø¾àµÄ¼ÆÊ±Æ÷
procedure Tdm.tmInterTimer(Sender: TObject);
begin
  frmMain.mtInterClock.Value := (GetMillisecondTimeStamp - glStartTest)/1000;
end;
 
procedure Tdm.tmResetTimer(Sender: TObject);
begin
  frmMain.lblMaintain.Caption := Format('Ìáʾ£ºË®·ÖÒÇ [¸´Î»] ÖУ¬ÇëµÈ´ý %.2f Ãë.',
                                        [(GetMillisecondTimeStamp - glStartTest)/1000]);
end;
 
end.