ulightmgr.pas
来自「智能交通系统演示」· PAS 代码 · 共 56 行
PAS
56 行
unit uLightMgr;
interface
uses uPort, uCar, uLight, Contnrs, SysUtils, ExtCtrls, uGlobalObj;
type
TLightMgr = class
private
FTimer: TTimer;
procedure FOnTimer(Sender: TObject);
public
constructor Create;
destructor Destroy;override;
end;
implementation
const
LIGHTINTERVAL = 20000;
procedure TLightMgr.FOnTimer(Sender: TObject);
var
n, i: integer;
LLight: TLight;
begin
n := GLightList.Count - 1;
for i := 0 to n do
begin
LLight := (GLightList.Items[i] as TLight);
if LLight.State = lsRed then
LLight.GreenOn
else if LLight.State = lsGreen then
LLight.LeftOn
else if LLight.State = lsLeft then
LLight.RightOn
else if LLight.State = lsRight then
LLight.RedOn;
end;
end;
constructor TLightMgr.Create;
begin
FTimer := TTimer.Create(nil);
FTimer.Interval := LIGHTINTERVAL;
FTimer.Enabled := true;
FTimer.OnTimer := FOnTimer;
end;
destructor TLightMgr.Destroy;
begin
FreeAndNil(FTimer);
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?