
Necesito tener la capacidad de activar y desactivar Alt + Tab. ¿Hay alguna manera de hacerlo a través de AHK? Sé cómo desactivarlo, pero creo que revertirlo no es posible.
lo deshabilito usuario!Tab::Return
Respuesta1
HayIf
. En general, puedes usarlo para ejecutar condicionalmente algún código. Una idea sencilla es enviar Alt+ Tabo nada, dependiendo de alguna condición.
Pero desde que envié Alt+Tab es problemático, quieres más bienAltTab
más que cualquier alternativa. El problema es:
AltTab
yShiftAltTab
son dos de los comandos especiales que sólo se reconocen cuando se usan en la misma línea que una tecla de acceso rápido.
No se reconocen dentro del If
comunicado.
Afortunadamente también existe#If
:
#If
es posicional: afecta a todas las teclas de acceso rápido y cadenas de acceso físicamente debajo de él en el script. […] Para desactivar la sensibilidad al contexto, especifique#If
[…] pero omita todos los parámetros.
De esta manera podemos aplicar condicionalmente su forma conocida de desactivar la clave y ni siquiera la necesitamos AltTab
en el script:
#If (GetKeyState("ScrollLock", "T"))
!Tab:: Return
+!Tab:: Return ; to disable Shift+Alt+Tab as well
#If
Ahora ScrollLockes como "AltTabLock". Se bloquea Alt+ Tab.
Ajuste la condición a sus necesidades. Una variable puede resultar útil. Por ejemplo, esto hará que F10la tecla de alternancia:
#If (disable==1)
!Tab:: Return
+!Tab:: Return
#If
F10:: disable:=NOT(disable)