Add(ChildPanelEx,8135019,273,84)
{
}
BEGIN_SDK
Add(EditMultiEx,3270911,14,7)
{
WorkCount=#99:doWork= 0-ТёмноКрасный, 1-Красный, 2=Мигающий красный, 3=Зелёный, 4=ЯркоЗелёный, 5=Мигающий зелёный|
Width=384
Height=242
link(doWork,706818:doEvent1,[(28,13)(28,27)])
}
Add(Panel,13011606,91,154)
{
Left=135
Top=10
Width=25
Height=24
}
Add(LED,6147592,315,91)
{
Point(doVisible)
}
Add(LED,3580252,266,112)
{
Visible=1
ColorOn=65280
ColorOff=32768
Point(doVisible)
}
Add(Timer,3760102,91,196)
{
Interval=150
link(onTimer,1560489:doEvent1,[])
}
Add(If_else,16662494,196,175)
{
Op2=Integer(1)
link(onTrue,6147592:doChangeValue,[(247,181)(247,97)])
link(Op1,5826028:Value,[])
}
Add(Memory,5826028,196,63)
{
Default=Integer(1)
}
Add(Memory,7308992,161,133)
{
Default=Integer(1)
}
Add(If_else,10188796,161,203)
{
Op2=Integer(1)
link(onTrue,3580252:doChangeValue,[(254,209)(254,118)])
link(Op1,7308992:Value,[])
}
Add(Hub,706818,35,21)
{
OutCount=3
link(onEvent1,14028326:doOperation,[])
link(onEvent2,3035207:doWork1,[(81,34)])
link(onEvent3,4335848:doEvent,[(76,41)(76,104)])
}
Add(Hub,1560489,133,196)
{
link(onEvent1,16662494:doCompare,[(157,202)(157,181)])
link(onEvent2,10188796:doCompare,[])
}
Add(IndexToChanel,4335848,91,98)
{
Count=6
link(onEvent1,6147592:doOff,[])
link(onEvent2,6147592:doOn,[])
link(onEvent3,5826028:doClear,[(162,118)(162,76)])
link(onEvent4,3580252:doOff,[])
link(onEvent5,3580252:doOn,[])
link(onEvent6,7308992:doClear,[(139,139)(139,146)])
}
Add(Memory,16169332,91,63)
{
Default=Integer(0)
link(onData,11335764:doEvent1,[])
}
Add(Hub,11335764,133,63)
{
link(onEvent1,5826028:doValue,[])
link(onEvent2,7308992:doValue,[(152,76)(152,139)])
}
Add(Math,14028326,91,21)
{
OpType=7
Op2=3
ResultType=0
link(onResult,12127654:doEvent1,[])
}
Add(Math,10796414,266,21)
{
OpType=1
Op1=1
ResultType=0
link(onResult,6147592:doVisible,[(307,27)(307,118)])
}
Add(Hub,12127654,133,21)
{
link(onEvent1,10796414:doOperation,[])
link(onEvent2,3580252:doVisible,[(237,34)(237,139)])
}
Add(Timer,3989427,35,70)
{
Interval=10
AutoStop=1
link(onTimer,3035207:doWork2,[])
}
Add(HubEx,3035207,77,70)
{
link(onEvent,16169332:doClear,[])
}
END_SDK
Add(Button,2276202,175,84)
{
Left=55
Top=10
link(onClick,3713184:doNext,[])
}
Add(Counter,3713184,224,84)
{
Max=5
link(onNext,8135019:doWork,[])
}
@ColorOn=Цвет горящего светодиода|8|clRed
@ColorOff=Цвет потухшего светодиода|8|clMaroon
----------------------------------------------
hiLED.pas
...
//Обозначить в этом разделе две процедуры
public
...
procedure _work_doColorOn(var _Data:TData; Index:word);
procedure _work_doColorOff(var _Data:TData; Index:word);
...
//Внести в отот раздел описание добавленных процедур
implementation
....
procedure THILED._work_doColorOn;
begin
FColors[0]:=ToInteger(_Data);
FBr1:= CreateSolidBrush(FColors[0]);
end;
procedure THILED._work_doColorOff;
begin
FColors[1]:=ToInteger(_Data);
FBr2:= CreateSolidBrush(FColors[1]);
end;
...
и можно программно менять цвета
Add(LED,14713555,357,161)
{
Left=135
Top=55
ColorOn=65280
ColorOff=32768
Point(doColorOn)
Point(doColorOff)
}
Add(Button,11479133,175,161)
{
Left=55
Top=55
Caption="On/Off"
link(onClick,14713555:doChangeValue,[])
}
Add(Button,7905213,175,203)
{
Left=55
Top=85
Caption="Color"
link(onClick,6362323:doOpen,[])
}
Add(ColorDialog,6362323,224,203)
{
link(onSelect,1161367:doEvent1,[])
}
Add(ColorDialog,249670,294,210)
{
link(onSelect,14713555:doColorOff,[(342,216)(342,195)])
}
Add(Hub,1161367,266,203)
{
link(onEvent1,14713555:doColorOn,[(288,209)(288,188)])
link(onEvent2,249670:doOpen,[])
}