2016-02-18 2 views
0

Мне нравится, когда моя средняя кнопка мыши будет двойным щелчком, поэтому у меня есть сценарий .ahk, чтобы это произошло, но много программ, которые я использую (в частности, с использованием 3D-среды, такой как материал Autodesk) средняя кнопка мыши работает нормально, поэтому у меня есть этот скрипт:AutoHotkey #IfWinNotActive не активируется

#SetTitleMatchMode, 2 
#IfWinNotActive, Autodesk 
MButton::send, {LButton}{LButton} 

Все это делает работу двойного щелчка постоянной. Как будто он полностью игнорирует WinNotActive. Я понятия не имею, почему это не работает. Я попробовал несколько вещей, чтобы понять, могу ли я исправить это сам, но я не сделал никакого прогресса.

Пожалуйста, помните, что уважительные и уважительные ответы очень ценятся.

+0

пожалуйста, вы можете уточнить «не работает»? Является ли функция MButton переопределенной повсюду? – Blauhirn

+0

Извините, я собирался добавить более подробную информацию, но я забыл. Теперь это исправлено. Существует еще одна функция MButton, но она активируется только при определенных условиях и не должна мешать чему-либо. – Caleb

+1

это может помешать .. попробуйте доработать фрагмент кода с помощью простого '# ifwinnotactive', поэтому условие« сбрасывается »после горячей клавиши MButton – Blauhirn

ответ

0

Контекстно-зависимые директивы применяются ко всем следующим горячим строкам и горячим клавишам. Таким образом, вы должны «сбросить» это поведение и ограничить сферу с другой #ifWinNotActive:

#SetTitleMatchMode, 2 
#IfWinNotActive, Autodesk 
MButton::send, {LButton}{LButton} 
#IfWinNotActive 

(см https://autohotkey.com/docs/commands/_IfWinActive.htm#Basic_Operation подробности)

+0

Yay! Это работает, единственная проблема теперь в том, что у меня есть несколько программ, которые я хочу вызвать, и я, как представляется, не работает здесь функция ahk_group. – Caleb

+0

хорошо, я не знаю ahk_group. Но вы можете использовать '#if! WinActive (« Autodesk ») &&! WinActive (« prog2 ») &&! WinActive (« prog3 ») и т. Д., Если хотите, так что вы можете поместить все в одну строку (также не забудьте закрыть раздел с помощью другого '# if') – Blauhirn

+0

Это не работает для меня по какой-то причине. Я заметил, что вы использовали '&&' вместо '||', поэтому я попробовал '||', но ничего не изменил. – Caleb