Eydukyan писал(а):
А если без флажков? как то организовать можно?Вот набросал побыстрому. Наверное можно упростить...
Add(MainForm,837785,70,126)
{
Width=357
Height=207
Caption="Калькулятор Двоечника"
Position=1
}
Add(Edit,4023302,266,147)
{
Left=145
Top=45
Text=""
}
Add(Edit,13613133,315,147)
{
Left=110
Top=75
Text=""
}
Add(Edit,12400354,364,147)
{
Left=180
Top=75
Text=""
}
Add(Label,5815761,266,91)
{
Left=150
Top=20
Width=49
Height=17
Caption="Путь(Км)"
}
Add(Label,9746064,315,91)
{
Left=20
Top=78
Width=86
Height=17
Caption="Скорость(Км/Ч)"
}
Add(Label,12488876,364,91)
{
Left=235
Top=78
Width=51
Height=17
Caption="Время(Ч)"
}
Add(MultiElementEx,10686521,266,231)
{
@IsLib=True
link(Str,5770559:Var2,[])
}
BEGIN_SDK
Add(EditMultiEx,4044865,21,21)
{
VarCount=#7:GetData|
DataCount=#3:Str|
Width=237
Height=109
link(GetData,6655079:GetData,[(27,116)(55,116)])
}
Add(EventFromData,6655079,49,70)
{
link(onEvent,15998707:doLength,[])
}
Add(Length,15998707,98,70)
{
link(onLength,1066976:doCompare,[])
link(Str,4044865:Str,[(104,34)(27,34)])
}
Add(If_else,1066976,147,70)
{
Op2=Integer(0)
link(onTrue,11959808:doValue,[])
link(onFalse,11959808:doClear,[])
}
Add(Memory,11959808,196,70)
{
Default=Integer(1)
link(onData,6655079:doData,[(237,76)(237,53)(35,53)(35,76)])
}
END_SDK
Add(Button,11200868,224,301)
{
Left=135
Top=125
Width=65
Caption="Вычислить"
link(onClick,14201853:doGetIndex,[])
}
Add(MathParse,6918430,427,301)
{
DataCount=3
MathStr=""
Point(doMathStr)
link(X1,5770559:Var3,[(433,215)])
link(X2,9276673:Var3,[(440,208)])
link(X3,11755361:Var3,[(447,201)])
}
Add(MultiElementEx,14201853,308,301)
{
link(onGetString,6000669:doEvent1,[(360,307)(360,293)])
link(onPart2,6918430:doMathStr,[])
link(Bit1,10686521:GetData,[(314,282)(272,282)])
link(Bit2,13830242:GetData,[])
link(Bit3,16515211:GetData,[(328,282)(370,282)])
}
BEGIN_SDK
Add(EditMultiEx,9864643,21,21)
{
WorkCount=#10:doGetIndex|
EventCount=#11:onGetString|7:onPart2|
DataCount=#4:Bit1|4:Bit2|4:Bit3|
Width=286
Height=130
VOffset=10
HOffset=20
link(doGetIndex,7932436:doNumber,[(31,37)(31,79)])
}
Add(StrList,8703793,105,66)
{
Strings=#1:6|1:5|1:3|1:7|1:0|1:1|1:2|1:4|
Point(doGetIndex)
Point(onGetIndex)
link(onGetIndex,9529845:doEvent1,[])
}
Add(StrList,7038066,224,31)
{
Strings=#5:%2*%3|5:%1/%3|5:%1/%2|33:Одно из полей должно быть пустым!|27:Заполните 2 известных поля!|27:Заполните 2 известных поля!|27:Заполните 2 известных поля!|27:Заполните 2 известных поля!|
Point(doGetString)
Point(onGetString)
Point(String)
link(onGetString,9864643:onPart2,[])
}
Add(Hub,9529845,154,73)
{
link(onEvent1,7038066:doGetString,[])
link(onEvent2,1300079:doCompare,[(181,86)(181,97)])
}
Add(If_else,1300079,189,91)
{
Type=3
Op2=Integer(2)
link(onTrue,9864643:onGetString,[(292,97)(292,37)])
link(onFalse,7998096:doMessage,[])
}
Add(Message,7998096,245,98)
{
Caption="Внимание!"
link(Message,7038066:String,[])
}
Add(BitsToInt,7932436,41,73)
{
Count=3
link(onNumber,8703793:doGetIndex,[(89,79)(89,114)])
link(Bit1,9864643:Bit1,[])
link(Bit2,9864643:Bit2,[])
link(Bit3,9864643:Bit3,[])
}
END_SDK
Add(IndexToChanel,14911483,196,175)
{
Count=3
Point(Data)
link(onEvent1,4023302:doText2,[(259,181)(259,160)])
link(onEvent2,13613133:doText2,[(305,188)(305,160)])
link(onEvent3,12400354:doText2,[(359,195)(359,160)])
link(Data,12432443:Var,[])
}
Add(LineBreak,12814127,427,350)
{
Caption="Result"
Type=1
link(Data,6918430:Result,[])
Primary=[12432443,-231,-203]
}
Add(Hub,6000669,378,287)
{
link(onEvent1,6918430:doCalc,[(419,293)(419,307)])
link(onEvent2,14911483:doEvent,[(402,300)(402,345)(182,345)(182,181)])
}
Add(ChildPanel,15112588,105,77)
{
}
BEGIN_SDK
Add(EditMulti,1921610,21,21)
{
}
Add(Panel,9555412,35,105)
{
Left=110
Top=69
Width=120
Height=2
Color=0
}
END_SDK
Add(Label,8425016,70,77)
{
Left=166
Top=78
Width=12
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="X"
}
Add(GetDataEx,5770559,266,210)
{
link(Data,4023302:Text,[])
}
Add(GetDataEx,9276673,315,203)
{
link(Data,13613133:Text,[])
}
Add(GetDataEx,11755361,364,196)
{
link(Data,12400354:Text,[])
}
Add(MultiElementEx,13830242,315,231)
{
elink(10686521)
link(Str,9276673:Var2,[])
}
Add(MultiElementEx,16515211,364,231)
{
elink(10686521)
link(Str,11755361:Var2,[])
}