Вот пример на простейшем IC которое я применяю Add(ComboBox,2819636,469,112) { Left=145 Top=20 Width=115 Height=21 DataType=1 ReadOnly=0 Point(doSelect) Point(onSelect) Point(Count) Point(PHandle) Point(doSort) } Add(InlineCode,3059356,490,196) { WorkPoints=#14:doSelectFromId| VarPoints=#6:var_Id| DataPoints=#7:PHandle| Code=#15:unit HiAsmUnit;|0:|9:interface|0:|38:uses kol,Share,Debug,Windows,Messages;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|18: varid:integer;|25: sControl: PControl;|9: public|24: PHandle: THI_Event;|59: procedure doSelectFromId(var _Data:TData; Index:word);|51: procedure var_id(var _Data:TData; Index:word);|5: end;|0:|14:implementation|0:|66:procedure THiAsmClass.doSelectFromId(var _Data:TData; Index:word);|3:var|15: MyId:Integer;|0:|23: i:integer; k:integer;|5:begin|27: MyId := toInteger(_Data);|48: sControl := PControl(ToIntegerEvent(PHandle));|33: for i:=0 to sControl.Count-1 do|7: begin|40: if sControl.ItemData[i] = MyId then |10: begin |30: sControl.CurIndex := i;|14: Break; |9: end; |6: end;|4:end;|29:procedure THiAsmClass.var_id;|5:begin|48: sControl := PControl(ToIntegerEvent(PHandle));|48: varid := sControl.ItemData[sControl.CurIndex];|26: dtInteger(_Data, varid);|4:end;|0:|0:|4:end.| link(PHandle,2819636:PHandle,[]) } Add(MainForm,10377423,203,105) { Width=366 Height=215 Position=1 Point(onMouseEnter) Point(SizeHeader) Point(Left) Point(Top) Point(onMouseWheel) link(onCreate,6528214:doEnum,[]) } Add(MT_String,9175342,413,112) { link(onResult,2819636:doAdd,[]) } Add(StrList,14729243,259,56) { Strings=#10:Иванов;123|10:Петров;250|10:Сидоров;12|11:Абрамов;300|10:Николаев;9| } Add(ArrayEnum,6528214,273,119) { link(onItem,1863668:doEvent1,[]) link(Array,14729243:Array,[]) } Add(Hub,1863668,322,119) { link(onEvent1,9175342:doMT,[]) link(onEvent2,13973027:doSplit,[(357,132)(357,195)]) } Add(ComboBox,12762227,427,189) { Left=35 Top=20 Height=21 Text="" DataType=1 ReadOnly=0 link(onClick,3059356:doSelectFromId,[]) } Add(StrPart,13973027,371,189) { Char=";" link(onSplit,12762227:doAdd,[]) } Add(Button,7818903,434,252) { Left=35 Top=140 link(onClick,28908:doData,[]) } Add(DoData,28908,490,252) { link(onEventData,13743353:doEvent,[]) link(Data,3059356:var_Id,[]) } Add(Debug,13743353,539,252) { }
Яйца, конечно, ещё те. P.S. Данные с нижней точки IC можно получить "напрямую" без doSelectFromId Редактировалось 1 раз(а), последний 2016-09-04 20:26:48
|