Вверх ↑
Этот топик читают: Гость
Ответов: 839
Рейтинг: 17
#1: 2018-11-25 14:44:32 ЛС | профиль | цитата
Не понимаю как сделать .так что бы после зажатия на мыш левую,происходили клики до того момента пока не перестану жать
Add(Keyboard,1636610,462,252)
{
Key=2
link(onReadKey,7629201:doCompare,[])
}
Add(Timer,10251937,385,252)
{
Interval=10
link(onTimer,1636610:doReadKey,[])
}
Add(If_else,7629201,553,252)
{
Op2=Integer(1)
link(onTrue,1046365:doTimer,[])
link(onFalse,1046365:doStop,[])
}
Add(Timer,1046365,630,252)
{
Interval=10
Enable=1
AutoStop=5
OverCall=1
link(onTimer,12467480:doEvent1,[])
}
Add(Hub,12467480,714,252)
{
link(onEvent1,5149797:doPressDown,[])
link(onEvent2,5149797:doPressUp,[])
}
Add(KeyEvent,5149797,798,245)
{
}
Add(Button,9126013,266,252)
{
Left=20
Top=15
Width=75
TabOrder=-1
Caption="PageUp"
link(onClick,10251937:doTimer,[])
}
Add(Button,818039,266,287)
{
Left=20
Top=45
Width=75
TabOrder=-1
Caption="Stop"
link(onClick,10251937:doStop,[(342,293)(342,265)])
}
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 8888
Рейтинг: 823
#2: 2018-11-25 16:34:31 ЛС | профиль | цитата

Add(MainForm,2953706,175,133)
{
Point(onMouseDown)
Point(onMouseUp)
Point(onMouseLeave)
link(onMouseDown,15035402:doWork2,[])
link(onMouseUp,16671027:doWork1,[(235,167)])
link(onMouseLeave,16671027:doWork2,[])
}
Add(Timer,8899109,294,154)
{
Interval=50
Enable=1
link(onTimer,3340103:doNext,[])
}
Add(If_else,13412828,245,154)
{
Op2=Integer(0)
link(onTrue,8899109:doTimer,[])
}
Add(Counter,3340103,343,154)
{
Max=99999999
link(onNext,2953706:doCaption,[(382,160)(382,125)(165,125)(165,139)])
}
Add(Button,8774284,175,182)
{
Left=35
Top=95
Point(onMouseDown)
Point(onMouseUp)
Point(onMouseLeave)
link(onMouseDown,15035402:doWork3,[(221,195)])
link(onMouseUp,3430276:doWork2,[])
link(onMouseLeave,3430276:doWork3,[(235,209)])
}
Add(HubEx,15035402,217,154)
{
link(onEvent,13412828:doCompare,[])
}
Add(HubEx,16671027,231,168)
{
link(onEvent,8899109:doStop,[(284,174)(284,167)])
}
Add(HubEx,3430276,231,196)
{
Angle=3
link(onEvent,16671027:doWork3,[])
}


Редактировалось 1 раз(а), последний 2018-11-25 16:35:49
карма: 19

0
Ответов: 839
Рейтинг: 17
#3: 2018-11-25 16:38:26 ЛС | профиль | цитата
Леонид у меня клик 1 так и не заработал. все так же жмет всего 1 раз.
обновил,ф1 включить,ф2выключить

Add(Keyboard,1636610,301,112)
{
Key=1
Point(ToggleState)
link(onReadKey,7629201:doCompare,[])
}
Add(Timer,10251937,217,112)
{
Interval=100
Enable=1
link(onTimer,1636610:doReadKey,[])
}
Add(If_else,7629201,357,112)
{
Op2=Integer(1)
link(onTrue,13341447:doEvent1,[])
link(onFalse,11799870:doData,[])
}
Add(Timer,1046365,798,238)
{
Interval=20
Enable=1
Point(doInterval)
link(onTimer,14779423:doEvent1,[])
}
Add(MainForm,462163,-14,161)
{
Width=689
Height=236
Caption="Escape from Tarkov"
Point(MouseX)
Point(MouseY)
Point(onMouseDown)
link(onCreate,2115473:doEvent1,[])
}
Add(MouseEvent,12174754,939,301)
{
Point(onVisible)
}
Add(Label,2127031,980,238)
{
Left=240
Top=10
link(Text,9671515:Count,[(986,233)(954,233)(954,282)(923,282)])
}
Add(CounterEx,9671515,917,238)
{
link(onNext,2127031:doText,[])
}
Add(Hub,14779423,854,238)
{
link(onEvent1,9671515:doNext,[])
link(onEvent2,6200667:doEvent,[(886,251)(886,307)])
}
Add(Edit,7154849,736,104)
{
Left=115
Top=10
Width=70
Text="160"
DataType=2
link(onChange,8937960:doData,[(774,110)(774,144)(724,144)(724,159)])
}
Add(Edit,15875145,833,105)
{
Left=115
Top=45
Width=70
Text="5"
DataType=2
link(onChange,3546290:doData,[(877,111)(877,132)(821,132)(821,153)])
}
Add(Label,763817,694,104)
{
Left=15
Top=10
Width=81
Height=20
Font=[MS Sans Serif,10,1,0,1]
Caption="Интервал:"
}
Add(Label,11631645,788,105)
{
Left=15
Top=45
Width=95
Height=20
Font=[MS Sans Serif,10,1,0,1]
Caption="количество "
}
Add(DoData,8937960,736,153)
{
link(onEventData,1046365:doInterval,[(783,159)(783,258)])
link(Data,7154849:Text,[])
}
Add(DoData,3546290,833,147)
{
link(Data,15875145:Text,[])
}
Add(Hub,2115473,35,175)
{
link(onEvent1,11002180:doStartHotKey,[])
link(onEvent2,11385087:doStartHotKey,[(67,188)(67,230)])
}
Add(If_else,14512747,539,238)
{
Op2=Integer(1)
link(onTrue,1046365:doTimer,[])
link(onFalse,14941580:In,[(585,251)(585,293)])
link(Op1,1127353:Var,[])
}
Add(Memory,11409604,539,112)
{
Default=Integer(0)
link(onData,14512747:doCompare,[(590,118)(590,195)(492,195)(492,244)])
}
Add(GHotKey,11002180,84,175)
{
Key=112
link(onEventHotKey,14075264:In,[])
}
Add(GHotKey,11385087,84,224)
{
Key=113
link(onEventHotKey,5156018:doEvent1,[])
}
Add(Memory,3921280,413,63)
{
Default=Integer(0)
}
Add(Hub,13341447,497,112)
{
InCount=2
OutCount=1
link(onEvent1,11409604:doValue,[])
}
Add(DoData,11799870,413,119)
{
Data=Integer(0)
link(onEventData,13341447:doEvent2,[])
link(Data,3921280:Value,[])
}
Add(LineBreak,9126124,679,245)
{
Caption="stop"
link(Out,1390784:doEvent1,[])
Primary=[11045071,-268,14]
}
Add(LineBreak,7866490,163,98)
{
Caption="start"
link(Out,10251937:doTimer,[(206,104)(206,118)])
Primary=[14075264,3,77]
}
Add(LineBreak,13163025,166,119)
{
Caption="stop"
link(Out,10251937:doStop,[])
Primary=[9338732,13,105]
}
Add(Hub,5156018,147,224)
{
link(onEvent1,9338732:In,[])
link(onEvent2,11045071:In,[(171,237)(171,265)])
}
Add(Debug,1127353,539,154)
{
link(Data,11409604:Value,[])
}
Add(LineBreak,11211317,658,287)
{
Caption="stop"
link(Out,1390784:doEvent2,[(721,293)(721,258)])
Primary=[14941580,-58,0]
}
Add(Hub,1390784,756,245)
{
InCount=2
OutCount=1
link(onEvent1,1046365:doStop,[(794,251)(794,251)])
}
Add(Debug,6200667,903,301)
{
link(onEvent,12174754:doClick,[(927,307)(927,307)])
}

ЧТо то такое нужно но для мышки проверить нажата или нет
Add(MainForm,13376086,259,189)
{
Point(onClose)
Point(onKeyDown)
link(onCreate,2317400:SetHook,[])
link(onClose,2317400:UnHook,[])
}
Add(InlineCode,2317400,301,203)
{
WorkPoints=#7:SetHook|6:UnHook|
EventPoints=#7nKeyUp|9nKeyDown|10nSysKeyUp|12nSysKeyDown|8nRepeat|
Code=#15:unit HiAsmUnit;|09:interface|038:uses kol,Share,Debug,Windows,Messages;|04:type|28: THiAsmClass = class(TDebug)|10: private|40: procedure onKey(param,code:integer);|9: public|65: onKeyUp,onKeyDown,onSysKeyUp,onSysKeyDown,onRepeat:THI_Event;|4: |46: procedure SetHook(var dt:TData; Idx:WORD);|45: procedure UnHook(var dt:TData; Idx:WORD);|5: end;|014:implementation|05:const|21: WH_KEYBOARD_LL = $D;|22: KBH_KEYREPEAT = $DD;|4:var |12: Hook:HHOOK;|45: ret:procedure(param,code:integer) of object;|04:type|24: LLKBH_STRUCT = record|11: vkCode,|13: ScanCode,|10: Flags,|15: TimeWORD;|23: dwExtraInfoDWORD;|7: end;|33: PLLKBH_STRUCT = ^LLKBH_STRUCT;|1: |28:var kbh_struct:LLKBH_STRUCT;|082:function HookProc(Code: integer; wParam:integer;lParam: LongInt): HRESULT;stdcall;|21:var kbh:LLKBH_STRUCT;|5:begin|44: kbh:=LLKBH_STRUCT(PLLKBH_STRUCT(lParam)^); |122: if (kbh_struct.vkCode = 0) and (kbh_struct.ScanCode = 0) and (kbh_struct.Flags = 0) then ret(wParam,kbh_struct.vkCode); |44: if kbh.Flags <> kbh_struct.Flags then begin|37: kbh_struct:=PLLKBH_STRUCT(lParam)^; |31: ret(wParam,kbh_struct.vkCode);|51: end else ret(KBH_KEYREPEAT,kbh_struct.vkCode); |55: result := CallNextHookEx(Hook, Code, wParam , lParam);|4:end;|030:procedure THiAsmClass.SetHook;|5:begin|25: with kbh_struct do begin|12: vkCode:=6;|14: ScanCode:=6;|11: Flags:=5;|5: end;|12: ret:=onKey;|64: Hook := SetWindowsHookEx(WH_KEYBOARD_LL,@HookProc,HInstance,0);|4:end;|028:procedure THiAsmClass.onKey;|5:begin|16: Case Param of|45: WM_KEYDOWN :_hi_OnEvent(onKeyDown,code);|43: WM_KEYUP :_hi_OnEvent(onKeyUp,code);|48: WM_SYSKEYDOWN:_hi_OnEvent(onSysKeyDown,code);|46: WM_SYSKEYUP :_hi_OnEvent(onSysKeyUp,code);|44: KBH_KEYREPEAT:_hi_OnEvent(onRepeat,code);|9: end; |4:end;|029:procedure THiAsmClass.UnHook;|5:begin|27: UnhookWindowsHookEx(Hook);|4:end;|04:end.|
link(onKeyUp,3658577:doWork1,[])
link(onKeyDown,3658577:doWork2,[])
link(onSysKeyUp,3658577:doWork3,[])
link(onSysKeyDown,3658577:doWork4,[])
link(onRepeat,3658577:doWork5,[])
}
Add(ListBox,11565061,525,168)
{
Left=125
Top=35
Width=205
Height=180
}
Add(StrList,4095676,427,161)
{
Strings=#15:Опущена клавиша|14:Нажата клавиша|25:Опущена системная клавиша|24:Нажата системная клавиша|20:Удерживается клавиша|
Point(doGetString)
Point(onGetString)
link(onGetString,9575750:doString,[])
}
Add(ChanelToIndex,3658577,350,203)
{
Count=5
Point(Data)
link(onIndex,4095676:doGetString,[])
}
Add(FormatStr,9575750,469,168)
{
link(onFString,11565061:doAdd,[])
link(Str2,3658577ata,[(482,156)(419,156)(419,247)(356,247)])
}
как проверить зажата ли клавиша на мышке или нет.

Редактировалось 3 раз(а), последний 2018-11-25 18:15:33
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#4: 2018-11-25 19:55:41 ЛС | профиль | цитата

Add(MainForm,1703972,154,140)
{
Width=203
Height=107
Point(onMouseDown)
Point(onMouseUp)
Point(onMouseLeave)
link(onMouseDown,1128567:doEvent,[])
link(onMouseUp,8899109:doStop,[])
}
Add(Timer,8899109,252,161)
{
Interval=100
Enable=1
link(onTimer,3340103:doNext,[])
}
Add(Counter,3340103,301,161)
{
Max=99999999
link(onNext,12166236:doText,[])
}
Add(HubEx,3430276,189,196)
{
Angle=3
}
Add(IndexToChanel,1128567,203,161)
{
Count=1
link(onEvent1,8899109:doTimer,[])
}
Add(Label,12166236,350,161)
{
Left=95
Top=25
Font=[MS Sans Serif,10,1,0,1]
Transparent=0
}

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 839
Рейтинг: 17
#5: 2018-11-26 05:43:40 ЛС | профиль | цитата
Не то, работает только на форме. а как сделать отслеживания состояния нажатия и отпускания мыши не только на форме родительской
Содержит состояния 1 либо 0, а как отследить зажал ли я её.
Add(Keyboard,1636610,266,112)
{
Key=1
Point(ToggleState)
}

Редактировалось 1 раз(а), последний 2018-11-26 06:13:49
карма: 0

0
Ответов: 8888
Рейтинг: 823
#6: 2018-11-26 09:41:07 ЛС | профиль | цитата
GAv, так?
Так


Add(Keyboard,12765984,231,119)
{
Key=1
link(onReadKey,2092463:doData,[])
}
Add(Timer,2420783,182,119)
{
Interval=10
link(onTimer,12765984:doReadKey,[])
}
Add(ChangeMon,2092463,273,119)
{
link(onData,13940932:doEvent,[])
}
Add(IndexToChanel,13940932,315,119)
{
link(onEvent1,8813075:doOff,[])
link(onEvent2,8813075:doOn,[])
}
Add(LED,8813075,364,112)
{
Left=5
Top=5
}

карма: 19

0
Ответов: 839
Рейтинг: 17
#7: 2018-11-26 10:52:45 ЛС | профиль | цитата
Без изменений, я понял что проблема в эмуляции нажатия,после нажатия значения 1 => 0 ,
Add(Timer,10251937,203,119)
{
Interval=100
Enable=1
link(onTimer,12765984:doReadKey,[])
}
Add(Timer,1046365,798,238)
{
Interval=20
Enable=1
AutoStop=5
OverCall=1
Point(doInterval)
Point(doAutoStop)
link(onTimer,14779423:doEvent1,[])
}
Add(MouseEvent,12174754,939,301)
{
Point(onVisible)
}
Add(Label,2127031,980,238)
{
Left=240
Top=10
link(Text,9671515:Count,[(986,233)(954,233)(954,282)(923,282)])
}
Add(CounterEx,9671515,917,238)
{
link(onNext,2127031:doText,[])
}
Add(Hub,14779423,854,238)
{
link(onEvent1,9671515:doNext,[])
link(onEvent2,12174754:doClick,[(886,251)(886,307)])
}
Add(Edit,7154849,582,321)
{
Left=115
Top=10
Width=70
Text="20"
DataType=2
link(onChange,8937960:doData,[(620,327)(620,361)(570,361)(570,376)])
}
Add(Edit,15875145,586,420)
{
Left=115
Top=45
Width=70
Text="10"
DataType=2
link(onChange,3546290:doData,[(630,426)(630,447)(574,447)(574,468)])
}
Add(Label,763817,540,321)
{
Left=15
Top=10
Width=81
Height=20
Font=[MS Sans Serif,10,1,0,1]
Caption="Интервал:"
}
Add(Label,11631645,541,420)
{
Left=15
Top=45
Width=95
Height=20
Font=[MS Sans Serif,10,1,0,1]
Caption="количество "
}
Add(DoData,8937960,582,370)
{
link(onEventData,1046365:doInterval,[(769,376)(769,258)])
link(Data,7154849:Text,[])
}
Add(DoData,3546290,586,462)
{
link(onEventData,1046365:doAutoStop,[(790,468)(790,265)])
link(Data,15875145:Text,[])
}
Add(Hub,2115473,35,175)
{
OutCount=3
link(onEvent1,11002180:doStartHotKey,[])
link(onEvent2,11385087:doStartHotKey,[(67,188)(67,230)])
}
Add(If_else,14512747,539,238)
{
Op2=Integer(1)
link(onTrue,1046365:doTimer,[])
link(Op1,4369720:Var2,[])
}
Add(Memory,11409604,539,112)
{
Default=Integer(0)
link(onData,8333930:doEvent1,[])
}
Add(GHotKey,11002180,84,175)
{
Key=112
link(onEventHotKey,14075264:In,[])
}
Add(GHotKey,11385087,84,224)
{
Key=113
link(onEventHotKey,5156018:doEvent1,[])
}
Add(LineBreak,6671148,679,245)
{
Caption="stop"
link(Out,1046365:doStop,[])
Primary=[11045071,-268,14]
}
Add(LineBreak,8829905,149,105)
{
Caption="start"
link(Out,10251937:doTimer,[(192,111)(192,125)])
Primary=[14075264,17,70]
}
Add(LineBreak,1337185,152,126)
{
Caption="stop"
link(Out,10251937:doStop,[])
Primary=[9338732,27,98]
}
Add(Hub,5156018,147,224)
{
link(onEvent1,9338732:In,[])
link(onEvent2,11045071:In,[(171,237)(171,265)])
}
Add(GetDataEx,4369720,539,147)
{
link(Data,11409604:Value,[])
}
Add(Hub,8333930,581,112)
{
link(onEvent1,14512747:doCompare,[(590,118)(590,195)(492,195)(492,244)])
}
Add(Keyboard,12765984,273,119)
{
Key=1
link(onReadKey,11685409:doData,[])
}
Add(ChangeMon,11685409,315,119)
{
link(onData,5488810:doEvent,[])
}
Add(IndexToChanel,5488810,357,119)
{
link(onEvent1,8813075:doOff,[])
link(onEvent2,8813075:doOn,[])
}
Add(LED,8813075,406,112)
{
Left=5
Top=5
link(onChange,16649710:doEvent,[])
}
Add(Debug,16649710,448,112)
{
link(onEvent,11409604:doValue,[])
}
не понимаю как решить проблему_))) Сейчас примерно у меня проблема в схеме,то что я пилю ветку на которой сижу
Кто какие видит решения?_)

Редактировалось 2 раз(а), последний 2018-11-26 11:47:03
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#8: 2018-11-26 12:59:46 ЛС | профиль | цитата
GAv писал(а):
Не то, работает только на форме. а как сделать отслеживания состояния нажатия и отпускания мыши не только на форме родительской
GAv писал(а):
Содержит состояния 1 либо 0, а как отследить зажал ли я её.
Add(Keyboard,1636610,266,112)
{
Key=1
Point(ToggleState)
}
И какая связь между Keyboard и Mouse
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 839
Рейтинг: 17
#9: 2018-11-26 13:49:55 ЛС | профиль | цитата
Keyboard я использую для того что бы отследить нажатия мыши была ли нажата кнопка мышии,
если она зажата то,Mouse должен имитировать клики до тех пор пока я держу кнопку мыши
карма: 0

0
Ответов: 8888
Рейтинг: 823
#10: 2018-11-26 15:22:42 ЛС | профиль | цитата
Ну, блин
блин


Add(Keyboard,12765984,336,84)
{
Key=1
link(onReadKey,2064594:doCompare,[])
}
Add(Timer,2420783,287,84)
{
Interval=50
link(onTimer,12765984:doReadKey,[])
}
Add(LED,8813075,448,84)
{
Left=5
Top=5
}
Add(If_else,2064594,385,84)
{
Op2=Integer(1)
link(onTrue,8813075:doChangeValue,[])
}

карма: 19

0
Ответов: 839
Рейтинг: 17
#11: 2018-11-26 15:51:23 ЛС | профиль | цитата
Леонид, Проверь в совокупности с остальной схемой , получается так,что не получается .

--- Добавлено в 2018-11-26 15:57:19

проблема в том что в keybord значения меняеться после эмуляции клика. с 1 до 0. и я не понимаю как сделать так что бы все работало в совокупности )))

--- Добавлено в 2018-11-26 16:06:31

наверное помогло бы это отловить непосредствено с мышки на прямую получения данных о клавишах. но как это реализовать

Редактировалось 2 раз(а), последний 2018-11-26 16:06:31
карма: 0

0
Ответов: 8888
Рейтинг: 823
#12: 2018-11-26 17:02:56 ЛС | профиль | цитата
GAv писал(а):
кнопка мышии, если она зажата то, Mouse должен имитировать клики до тех пор пока я держу кнопку мыши

Ещё раз блин: Она (левая кнопка мыши) УЖЕ НАЖАТА, имитировать можно ДРУГУЮ кнопку, или клавишу, или просто событие.
карма: 19

0
Ответов: 839
Рейтинг: 17
#13: 2018-11-26 17:49:19 ЛС | профиль | цитата
Леонид писал(а):
GAv писал(а):
кнопка мышии, если она зажата то, Mouse должен имитировать клики до тех пор пока я держу кнопку мыши

Ещё раз блин: Она (левая кнопка мыши) УЖЕ НАЖАТА, имитировать можно ДРУГУЮ кнопку, или клавишу, или просто событие.

Вот пока она (левая кнопка мыши) зажата на мышки ( в это время должны происходить клики симуляции нажатия "Кей=1" )
можно связаться через скайп или дискорд

Редактировалось 3 раз(а), последний 2018-11-26 17:54:53
карма: 0

0
Ответов: 871
Рейтинг: 322
#14: 2018-11-30 21:34:53 ЛС | профиль | цитата
Может я не правильно понял...
но как то так.

Add(MainForm,2953706,98,98)
{
Width=315
Height=238
Position=1
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,6471037:doWork2,[])
link(onMouseUp,6471037:doWork3,[(165,132)])
}
Add(LED,14295622,364,119)
{
Left=205
Top=75
}
Add(CounterEx,14150627,189,119)
{
Min=1
Max=2
link(onNext,11562193:doCase,[])
}
Add(Timer,6276072,308,119)
{
Interval=100
Enable=1
link(onTimer,14295622:doChangeValue,[])
}
Add(Case,11562193,245,119)
{
Value=Integer(2)
DataOnTrue=Integer(1)
link(onNextCase,6276072:doTimer,[])
link(onTrue,6276072:doStop,[])
}
Add(HubEx,6471037,161,119)
{
link(onEvent,14150627:doNext,[])
}

карма: 1

0
Ответов: 839
Рейтинг: 17
#15: 2018-12-09 13:40:50 ЛС | профиль | цитата
kamakama ,нет .
Нужно отследить состояния мышки. если зажата клавиша мышки (1) левая кнопка
То идет эмуляция клика кнопки левой мыши до тех пор пока я держу клавишу мышки зажатой.
Проблема в том что после эмуляции нажатия я не могу отследить мыш не посредствено .
карма: 0

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