Автоматическое нажатие F3-F4
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Добавил в лист.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
TotalMouseEX v0.1a by zL
AutoHotkey_L v1.1.1.00 Unicode
Зажатие левой кнопки - F3
Клик средней - F4
AutoHotkey_L v1.1.1.00 Unicode
Зажатие левой кнопки - F3
Клик средней - F4
Код: Выделить всё
#SingleInstance force
#If WinActive("ahk_class TTOTAL_CMD") and MouseUnder("TMyListBox[12]")
~LButton::
If LPress {
LPress += 1
Return
} LPress = 1
SetTimer, LPress, On
Return
MButton::
Click
Send, {F4}
Return
LPress:
SetTimer, LPress, Off
If (LPress = 1)
{ KeyWait, LButton, T0.4
If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD"))
{ Click
Send, {F3}
}
} LPress = 0
Return
MouseUnder(Controls) {
MouseGetPos,,,, Control
If RegExMatch(Control, Controls)
Return, True
}mf-zl
Интересное решение. Кстати, более удобно работает со средней кнопкой, чем утилита: там использование для других целей средней кнопки блокировалось в окне TC везде, здесь — только в файловых панелях.
А можно ли сделать вариант, где для средней кнопки — не клик, а зажатие, причём только при статичном положении мыши, без перетаскивания? Это позволило бы, например, также включать в файловых панелях TC функционал автоскроллинга или использовать прямоугольное выделение в стиле TWinKey.
Интересное решение. Кстати, более удобно работает со средней кнопкой, чем утилита: там использование для других целей средней кнопки блокировалось в окне TC везде, здесь — только в файловых панелях.
А можно ли сделать вариант, где для средней кнопки — не клик, а зажатие, причём только при статичном положении мыши, без перетаскивания? Это позволило бы, например, также включать в файловых панелях TC функционал автоскроллинга или использовать прямоугольное выделение в стиле TWinKey.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Не представит себе наши безобразия.
Avada, можно
Прилепил статику и на левую кнопку.
Также добавил пример двойного клика средней кнопкой - выделяет расширения под курсором
Прилепил статику и на левую кнопку.
Также добавил пример двойного клика средней кнопкой - выделяет расширения под курсором
Код: Выделить всё
; TotalMouseEX v0.3 by zL
; AutoHotkey_L v1.1.1.00 Unicode
#SingleInstance force
#If WinActive("ahk_class TTOTAL_CMD") and MouseUnder("TMyListBox[12]")
~LButton::
If LPress {
LPress += 1
Return
} LPress = 1
SetTimer, LPress, On
Return
~MButton::
If MPress {
MPress += 1
Return
} MPress = 1
SetTimer, MPress, On
Return
LPress:
SetTimer, LPress, Off
MouseGetPos, x0, y0
If (LPress = 1)
{ KeyWait, LButton, T0.4
MouseGetPos, x1, y1
If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD") && (x0 = x1 && y0 = y1))
{ Click
Send, {F3}
}
} LPress = 0
Return
MPress:
SetTimer, MPress, Off
MouseGetPos, x0, y0
If (MPress = 1)
{ KeyWait, MButton, T0.4
MouseGetPos, x1, y1
If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD") && (x0 = x1 && y0 = y1))
{ Click
Send, {F4}
}
} Else, If (MPress = 2)
{ Click
Send, !{NumpadAdd}
} MPress = 0
Return
MouseUnder(Controls) {
MouseGetPos,,,, Control
If RegExMatch(Control, Controls)
Return, True
}mf-zl
Спасибо. Сообщаю результаты тестирования.
С левой кнопкой всё OK, изменение со статикой подтверждаю.
Со средней — хуже. В чистом TC работа скрипта зависит от возможности автоскроллинга в текущей файловой панели (то есть есть ли куда крутить). Если прокрутка невозможна — срабатывают и одинарный, и двойной клик. Если возможна — средний клик сразу же включает режим автоскроллинга (появляется маркер), далее скрипт не срабатывает.
Одиночный длинный клик средней кнопкой в настроенном TC с включённым TWinKey (это мой штатный режим) в новой версии скрипта F4 не обрабатывает, только выделяется файл под курсором. Двойной щелчок (выделение по расширению) срабатывает, но почему-то со второго раза. Проверил настройки TWinKey, при отключении там опции, позволяющей средней кнопкой выставлять рамочное выделение, F4 начинает обрабатываться.
С отключённым (выгруженным по cm_UnloadPlugins) — TWinKey средняя кнопка работает ровно по тем же правилам, что в чистом TC.
То есть автоскроллинг работу скрипта явно блокирует. И "рамочная" фича TWinKey, похоже, тоже. Но её на крайний случай отключить можно, а автоскроллинг — нет. Такие дела.
P.S. И не надо было весь мой пост цитировать.
Спасибо. Сообщаю результаты тестирования.
С левой кнопкой всё OK, изменение со статикой подтверждаю.
Со средней — хуже. В чистом TC работа скрипта зависит от возможности автоскроллинга в текущей файловой панели (то есть есть ли куда крутить). Если прокрутка невозможна — срабатывают и одинарный, и двойной клик. Если возможна — средний клик сразу же включает режим автоскроллинга (появляется маркер), далее скрипт не срабатывает.
Одиночный длинный клик средней кнопкой в настроенном TC с включённым TWinKey (это мой штатный режим) в новой версии скрипта F4 не обрабатывает, только выделяется файл под курсором. Двойной щелчок (выделение по расширению) срабатывает, но почему-то со второго раза. Проверил настройки TWinKey, при отключении там опции, позволяющей средней кнопкой выставлять рамочное выделение, F4 начинает обрабатываться.
С отключённым (выгруженным по cm_UnloadPlugins) — TWinKey средняя кнопка работает ровно по тем же правилам, что в чистом TC.
То есть автоскроллинг работу скрипта явно блокирует. И "рамочная" фича TWinKey, похоже, тоже. Но её на крайний случай отключить можно, а автоскроллинг — нет. Такие дела.
P.S. И не надо было весь мой пост цитировать.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Не представит себе наши безобразия.
Код: Выделить всё
#Persistent
#SingleInstance force
Prj = TotalMouseEX v0.5 by zL
Tray:
Menu Tray, Tip, % Prj
Menu Tray, Icon, main.cpl
Menu Tray, NoStandard
Menu Tray, Add, &About, About
Menu Tray, Add
Menu Tray, Add, E&xit, Quit
Menu Tray, Default, &About
Return
About:
MsgBox 8256, % Prj,
(LTrim
Long press left mouse button to view file in lister
Long press middle mouse button to edit file
Double click middle mouse button to select files with same extension
)
Return
Quit:
ExitApp
#If WinActive("ahk_class TTOTAL_CMD") and MouseUnder("TMyListBox[12]")
~LButton::
If LPress {
LPress += 1
Return
} LPress = 1
SetTimer, LPress, On
Return
MButton::
If MPress {
MPress += 1
Return
} MPress = 1
SetTimer, MPress, On
Return
LPress:
SetTimer, LPress, Off
MouseGetPos, x0, y0
If (LPress = 1)
{ KeyWait, LButton, T0.4
MouseGetPos, x1, y1
If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD") && (x0 = x1 && y0 = y1))
{ Click
Send, {F3}
}
} LPress = 0
Return
MPress:
SetTimer, MPress, Off
MouseGetPos, x0, y0
If (MPress = 1)
{ KeyWait, MButton, T0.4
MouseGetPos, x1, y1
If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD") && (x0 = x1 && y0 = y1))
{ Click
Send, {F4}
} Else, Send, {MButton}
} Else, If (MPress = 2)
{ Click
Send, !{NumpadAdd}
} MPress = 0
Return
MouseUnder(Controls) {
MouseGetPos,,,, Control
If RegExMatch(Control, Controls)
Return, True
}mf-zl
Прогресс есть. В TC, где не включено рамочное выделение TWinKey, длинный средний щелчок срабатывает нормально, автоскроллинг по короткому щелчку тоже работает. Конфликта нет. Двойной средний клик срабатывает почему-то со второго либо третьего раза (первый раз включается автосроллинг).
При включённом рамочном выделении теперь работает только скрипт. Он блокирует создание рамочного выделения (средняя кнопка при перетаскивании), а включённая — пусть и неработающая — фича TWinKey блокирует автоскроллинг (но последнее — отдельный вопрос не для этой темы). Двойной средний щелчок срабатывает всегда по второму разу.
Добавление мини-справки — это тоже хорошо.
Прогресс есть. В TC, где не включено рамочное выделение TWinKey, длинный средний щелчок срабатывает нормально, автоскроллинг по короткому щелчку тоже работает. Конфликта нет. Двойной средний клик срабатывает почему-то со второго либо третьего раза (первый раз включается автосроллинг).
При включённом рамочном выделении теперь работает только скрипт. Он блокирует создание рамочного выделения (средняя кнопка при перетаскивании), а включённая — пусть и неработающая — фича TWinKey блокирует автоскроллинг (но последнее — отдельный вопрос не для этой темы). Двойной средний щелчок срабатывает всегда по второму разу.
Добавление мини-справки — это тоже хорошо.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Не представит себе наши безобразия.
Avada
странно! у меня всё срабатывает с первого раза, на чистом и не очень тк!
давай разбираться с TWinKey - скинь свой конфиг...
Обновления будут тут:
http://ghisler.ch/board/viewtopic.php?p=267739#267739
странно! у меня всё срабатывает с первого раза, на чистом и не очень тк!
давай разбираться с TWinKey - скинь свой конфиг...
Обновления будут тут:
http://ghisler.ch/board/viewtopic.php?p=267739#267739