begin
Counter.Value:= Counter.Value + 1;
if Counter.Value > 60 then
begin
Counter.Value := 0;
If NoteAlarm1.Value = false then
begin
Button69.States[0].Icon := 0;
Button69.States[0].Color :=clSilver;
NoteMessage1.Value:=0;
end
else
begin
if NoteTime1.Value < Now then
begin
Button69.States[0].Icon := 66;
Button69.States[0].Color :=clRed;
NoteMessage1.Value:=2;
end
else
begin
if MinutesBetween (Now, NoteTime1.Value) > 10 then
begin
Button69.States[0].Icon := 65;
Button69.States[0].Color :=clGreen;
NoteMessage1.Value:=0;
end
else
begin
Button69.States[0].Icon := 65;
Button69.States[0].Color :=clYellow;
NoteMessage1.Value:=1;
end;
end;
end;
end;
end.
пока вышло как-то так... Теперь тупо размножить, или можно аккуратнее?
Спасибо, разобрался
procedure Alarm(Time,Alm,Message:TM_Variable; Button:TM_Button);
begin
if Alm.Value = false then
begin
Button.States[0].Icon := 0;
Button.States[0].Color :=clSilver;
Message.Value:=0;
end
else
begin
if Time.Value < Now then
begin
Button.States[0].Icon := 66;
Button.States[0].Color :=clRed;
Message.Value:=2;
end
else
begin
if MinutesBetween (Now, Time.Value) > 10 then
begin
Button.States[0].Icon := 65;
Button.States[0].Color :=clGreen;
Message.Value:=0;
end
else
begin
Button.States[0].Icon := 65;
Button.States[0].Color :=clYellow;
Message.Value:=1;
end;
end;
end;
end;
begin
Counter.Value:= Counter.Value + 1;
if Counter.Value > 60 then
begin
Counter.Value := 0;
Alarm (NoteTime1 ,NoteAlarm1 ,NoteMessage1 ,Button69 );
Alarm (NoteTime2 ,NoteAlarm2 ,NoteMessage2 ,Button81 );
...
Alarm (NoteTime53,NoteAlarm53,NoteMessage53,Button523);
Alarm (NoteTime54,NoteAlarm54,NoteMessage54,Button531);
end;
end.