Немного продолжил "шаманство" с базовым элементом. Результат - в том же месте. На предмет исследования корректности определения ошибок. Без изменений функционирования в штатном режиме. В связи с этим, добавил еще одну нижнюю точку LenErr (в дополнение к PosErr). Определял позиции ошибки чуток по другому (упоминал про это ранее). Собственно, как это делал Assasin, в режиме DebugMode -- более разумно. Тренировался на этой схеме: Add(MainForm,2953706,154,175) { Width=563 Height=107 Position=1 link(onCreate,13979530:doData,[]) } Add(Edit,3394492,280,35) { Left=14 Top=14 Width=78 Text="3.1" Alignment=1 DataType=4 } Add(Edit,10671275,336,35) { Left=98 Top=14 Width=78 Text="2.7" Alignment=1 DataType=4 } Add(Button,13089638,203,35) { Left=189 Top=14 Caption="EXE" link(onClick,8213495:doWork1,[(249,41)]) } Add(Edit,11851198,336,98) { Left=252 Top=14 Width=155 Text="0" link(onChange,16637626:doStrCat,[]) } Add(Edit,12199166,203,105) { Top=50 Width=555 Height=23 Align=4 Font=[Lucida Console,12,1,0,204] Text="min(arccos(1/2^.5), %1+%2, %1-%2, 30, XXX(1), 60)" ClearAfterEnter=1 Point(doPosition) Point(doSelectLength) Point(doSetFocus) link(onChange,10921608:doWork2,[]) link(onEnter,8213495:doWork3,[(249,118)]) } Add(MathParse,14138065,280,98) { DataCount=3 MathStr="" AngleMode=1 ExtNames=3 Point(doMathStr) Point(onError) Point(PosErr) Point(LenErr) link(onResult,11851198:doText,[]) link(X1,3394492:Text,[]) link(X2,10671275:Text,[(293,75)(342,75)]) link(onError,5702810:doEvent1,[(319,111)(319,90)(46,90)(46,125)]) } Add(DoData,13979530,203,189) { link(onEventData,10921608:doWork3,[(263,195)]) link(Data,12199166:Text,[]) } Add(HubEx,10921608,259,105) { link(onEvent,14138065:doMathStr,[]) } Add(DoData,14850193,91,119) { link(onEventData,12199166:doPosition,[]) link(Data,14138065:PosErr,[(97,103)(188,103)(188,152)(293,152)]) } Add(DoData,15048762,140,126) { link(onEventData,12199166:doSelectLength,[]) link(Data,14138065:LenErr,[(146,117)(181,117)(181,159)(300,159)]) } Add(Hub,5702810,56,119) { OutCount=4 link(onEvent1,14850193:doData,[]) link(onEvent2,15048762:doData,[]) link(onEvent3,12199166:doSetFocus,[]) link(onEvent4,4639692:doRead,[(81,146)(81,181)]) } Add(ArrayRW,4639692,98,175) { link(onRead,16008335:doWork2,[]) link(Array,14012477:Array,[]) } Add(StrList,14012477,84,35) { Strings=#21:Синтаксическая ошибка|17:Ошибка вычисления| } Add(HubEx,8213495,245,98) { link(onEvent,14138065:doCalc,[]) } Add(StrCat,16637626,385,98) { Str1="Результат: " link(onStrCat,16008335:doWork1,[(424,104)(424,167)(144,167)]) } Add(HubEx,16008335,140,175) { link(onEvent,2953706:doCaption,[]) }
Чего коллегам и предлагаю ------------ Добавленo в 13.47:Тешу себя надеждой, что те, кому интересны конкретные изменения -- умеют пользоваться Черепахой.
|