Add(MainForm,2953706,21,105) { Point(onKeyDown) link(onKeyDown,7471541:doKey,[]) } Add(InlineCode,7471541,70,126) { WorkPoints=#5:doKey| EventPoints=#5:onKey| DataPoints=#3:key| Code=#15:unit HiAsmUnit;|0:|9:interface|0:|29:uses kol,windows,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|18: result:String;|9: public|17: key:THI_Event;|19: onKey:THI_Event;|49: procedure doKey(var _data:TData; Index:Word);|5: end;|0:|14:implementation|0:|28:procedure THiAsmClass.dokey;|3:var|8:ch:char;|12:hk:Cardinal;|18:ks:TKeyboardState;|5:begin|44: hk:=GetKeyboardLayout(GetCurrentThreadId);|23: GetKeyboardState(ks);|61: ToAsciiEx(Cardinal(ReadInteger(_data, key)),0,ks,@ch,0,hk);|13: result:=ch;|28: _hi_OnEvent(onKey,result);|4:end;|0:|0:|4:end.| link(onKey,14827142:doMessage,[]) } Add(Message,14827142,217,126) { }