Вверх ↑
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
#16: 2017-11-24 08:52:55 ЛС | профиль | цитата
Ну, если применять IC, то применять.

Add(MainForm,12632971,616,147)
{
Width=798
Height=306
link(onCreate,12651080:doWork2,[(655,167)(655,254)(228,254)(228,153)])
}
Add(Memo,13721227,364,189)
{
Left=55
Top=1
Width=360
Height=260
ScrollBars=2
link(onChange,7875099:doEvent1,[])
}
Add(BitBtn,11517881,161,133)
{
Top=5
link(onClick,6497433:doEvent1,[])
}
Add(Hub,7875099,420,189)
{
OutCount=3
link(onEvent1,5765131:doStart,[(445,195)(445,146)])
link(onEvent2,8598429:doStart,[])
link(onEvent3,8598429:doSimvol,[])
}
Add(RichEdit,8140962,532,182)
{
Left=420
Top=1
Width=360
Height=260
ScrollBars=3
InsertCRLF=1
}
Add(TimeCounter,5765131,532,140)
{
link(onStop,15088095:doString,[])
}
Add(Hub,6417071,497,196)
{
link(onEvent1,8140962:doText,[])
link(onEvent2,5765131:doStop,[(522,209)(522,153)])
}
Add(Hub,6497433,210,133)
{
link(onEvent1,7345710:doClear,[(284,139)(284,160)])
link(onEvent2,12651080:doWork1,[])
}
Add(MultiElement,12651080,238,140)
{
link(onEvent1,14156105:doData,[(279,146)(279,216)])
link(onEvent2,7345710:doAdd,[])
}
BEGIN_SDK
Add(EditMulti,6229223,21,21)
{
EventCount=2
WorkCount=2
Width=391
Height=151
link(doWork1,8604866:doFor,[(39,27)(39,55)])
link(doWork2,14358382:doRandSeed,[(214,34)(214,69)])
}
Add(For,8604866,49,49)
{
End=5500
link(onEvent,3176202:doFor,[])
link(onStop,6229223:onEvent1,[(88,62)(88,27)])
}
Add(For,3176202,105,49)
{
End=9
link(onEvent,8728549:doFor,[])
link(onStop,2882879:doEvent1,[(151,62)(151,146)])
}
Add(For,8728549,161,49)
{
End=9
link(onEvent,14358382:doRandom,[])
link(onStop,15012832:doData,[(207,62)(207,97)])
}
Add(Random,14358382,231,49)
{
Min=224
Max=255
link(onRandom,9397542:doConvert,[])
}
Add(StrCat,14624114,336,49)
{
Point(doClear)
link(Str1,7137491:Var3,[(342,40)(376,40)(376,91)])
}
Add(Convertor,9397542,273,49)
{
Mode=4
link(onResult,8552071:doWork2,[])
}
Add(DoData,15012832,273,91)
{
Data=String( )
link(onEventData,8552071:doWork3,[(319,97)])
}
Add(HubEx,8552071,315,49)
{
link(onEvent,14624114:doStrCat,[])
}
Add(Hub,2882879,287,140)
{
link(onEvent1,15495871:doData,[(333,146)(333,111)])
link(onEvent2,14624114:doClear,[(326,153)(326,62)])
}
Add(DoData,15495871,343,105)
{
link(onEventData,6229223:onEvent2,[(391,111)(391,34)])
link(Data,7137491:Var2,[])
}
Add(GetDataEx,7137491,343,86)
{
Angle=3
link(Data,14624114:Result,[(342,91)])
}
END_SDK
Add(FormatStr,15088095,574,147)
{
Mask="Обработано %1 символов за %2 мсек"
link(onFString,12632971:doCaption,[])
link(Str1,8598429:Count,[(580,135)(571,135)(571,236)(461,236)])
}
Add(StrList,7345710,308,147)
{
}
Add(InlineCode,8598429,455,196)
{
WorkPoints=#7:doStart|8:doSimvol|
EventPoints=#5:onRes|
VarPoints=#5:Count|
DataPoints=#3:str|
Code=#15:unit HiAsmUnit;|17:// Author Tad 8-)|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|13: ss:string;|9: public|29: Str, onRes : THI_Event;|52: PROCEDURE doStart(var _Data:TData; Index:Word);|53: PROCEDURE doSimvol(var _Data:TData; Index:Word);|50: PROCEDURE Count(var _Data:TData; Index:Word);|5: end;|0:|14:implementation|0:|30:PROCEDURE THiAsmClass.doStart;|0:|5:BEGIN|9: ss:='';|4:END;|0:|31:PROCEDURE THiAsmClass.doSimvol;|24:var s:string; i:integer;|5:BEGIN|26: ss:= toStringEvent(Str);|27: For i:=1 to Length(ss) do|50: if (ss[i]<>#13) or (ss[i]<>#10) then s:=s+ss[i];|23: _hi_onEvent(onRes,s);|4:END;|0:|28:PROCEDURE THiAsmClass.Count;|5:BEGIN|30: dtInteger(_Data,Length(ss));|4:END;|0:|4:end.|
link(onRes,6417071:doEvent1,[])
link(str,13721227:Text,[(461,184)(405,184)(405,247)(370,247)])
}
Add(DoData,14156105,308,210)
{
link(onEventData,13721227:doText,[])
link(Data,7345710:Text,[])
}

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 8888
Рейтинг: 823
#17: 2017-11-24 11:40:36 ЛС | профиль | цитата
Tad, у ТС на каждый символ фильтр свой особенный, его, конечно, тоже можно в IC ввести, но в задании-то кроме переноса строк ничего не отражено
карма: 19

0
17
Сообщение
...
Прикрепленные файлы
(файлы не залиты)