Вверх ↑
Ответов: 1043
Рейтинг: 33
#1: 2012-01-07 00:49:34 ЛС | профиль | цитата
лан, тема закрыта сам уже сделал...
Получение имени папки сразу после открытия...

Вот... может кому пригодиться
Add(MultiElementEx,1776038,532,119)
{
link(onEventData,4841252:doMessage,[])
}
BEGIN_SDK
Add(EditMultiEx,9174938,21,21)
{
WorkCount=#23:doTimer=получить адресс|0:|
EventCount=#41:onEventData=Полный путь до открытой папки|
VarCount=#10:Item=хендл|
Width=783
Height=438
link(doTimer,16604061:doFind,[(109,27)(109,55)])
link(Item,15441677:Var1,[(27,89)])
}
Add(InlineCode,3528733,140,259)
{
WorkPoints=#6:doWork|
EventPoints=#7:onEvent|
DataPoints=#6:Handle|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|29:uses kol,Share,Debug,windows;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|17: lst:PstrList;|9: public|23: onEvent:THI_Event;|22: handle:THI_Event;|48: procedure doWork(var dt:TData; index:word);|5: end;|0:|14:implementation|0:|73:function EnumChildProc(Child_HWND:HWND; ParamL:LPARAM):boolean; stdcall; |6:begin |51: THiAsmClass(ParamL).lst.add(int2str(Child_HWND));|17: result := true;|4:end;|0:|29:procedure THiAsmClass.doWork;|5:begin|21: lst := newstrlist;|75: EnumChildWindows(ReadInteger(dt,Handle,0), @EnumChildProc,LPARAM(self));|34: _hi_OnEvent(onEvent, lst.text);|12: lst.free;|4:end;|0:|4:end.|
link(onEvent,3575803:doText,[(256,265)(256,230)])
link(Handle,15441677:Var2,[(146,170)(202,170)])
}
Add(ArrayEnum,1985613,280,315)
{
link(onItem,868336:doWinInfo,[])
link(Array,3575803:Array,[(286,281)(293,281)])
}
Add(WinInfo,868336,385,315)
{
link(onWinInfo,10660966:doCompare,[(422,321)(422,377)])
}
Add(If_else,10660966,462,371)
{
link(onFalse,7253045:doSplit,[])
link(Op1,13919753:Var2,[])
}
Add(GetDataEx,13919753,462,354)
{
Angle=3
link(Data,868336:Caption,[(398,359)])
}
Add(If_else,13506222,217,147)
{
link(onFalse,3528733:doWork,[(261,160)(261,212)(128,212)(128,265)])
}
Add(FindWindow,16604061,196,49)
{
ClassName="CabinetWClass"
SkipParam=1
link(onFind,13506222:doCompare,[(292,55)(292,111)(184,111)(184,153)])
}
Add(StrList,3575803,273,203)
{
link(onChange,1985613:doEnum,[(317,209)(317,282)(268,282)(268,321)])
}
Add(StrPart,7253045,560,378)
{
Char=":"
DirectEvent=0
link(onSplit,7653266:doValue,[(642,384)(642,342)])
link(onPart,7934777:doCompare,[])
link(Str,13919753:Var3,[(566,359)])
}
Add(If_else,7934777,665,385)
{
Op2=String(Адрес)
link(onTrue,13423522:doData,[])
}
Add(Memory,7653266,721,336)
{
}
Add(DoData,13423522,721,385)
{
link(onEventData,9174938:onEventData,[(779,391)(779,27)])
link(Data,7653266:Value,[])
}
Add(GetDataEx,15441677,196,84)
{
link(Data,16604061:Handle,[])
}
END_SDK
Add(Keyboard,10095413,112,140)
{
Key=1
link(onReadKey,787608:doEvent,[])
}
Add(IndexToChanel,787608,217,140)
{
Data=Integer(1)
link(onEvent1,16627404:doCompare,[(299,146)(299,139)])
link(onEvent2,7282103:doWork2,[(282,153)(282,76)])
}
Add(Timer,5133296,42,140)
{
Interval=0
link(onTimer,10095413:doReadKey,[])
}
Add(Memory,8272905,315,70)
{
Default=Integer(0)
}
Add(If_else,16627404,315,133)
{
Op2=Integer(1)
link(onTrue,5514013:doEvent1,[])
link(Op1,8272905:Value,[])
}
Add(Hub,5514013,378,133)
{
link(onEvent1,2253771:doData,[(406,139)(406,104)])
link(onEvent2,1626110:doTimer,[])
}
Add(HubEx,7282103,287,70)
{
link(onEvent,8272905:doValue,[])
}
Add(DoData,2253771,420,98)
{
Data=Integer(0)
link(onEventData,7282103:doWork3,[(464,104)(464,92)(291,92)])
}
Add(Message,4841252,609,119)
{
link(Caption,1776038:Item,[(622,107)(580,107)(580,163)(538,163)])
}
Add(Timer,1626110,427,140)
{
Interval=350
link(onTimer,15154006:doEvent1,[])
}
Add(Hub,15154006,462,140)
{
link(onEvent1,1776038:doTimer,[(504,146)(504,125)])
link(onEvent2,1626110:doStop,[(487,153)(487,179)(415,179)(415,153)])
}




[flood]Схема не стабильна и тестировалась на win 7. можно подкорректировать, и будет конфетка [/flood]
карма: 0

0