Специален режим с ALT, като с capslock

Искам да включа „режим със стрелка“, след като щракна върху alt (както превключвам режима на главни букви, след като щракна върху Caps Lock).

Искам да натисна alt веднъж и след това да използвам букви през цялото време като стрелки (като alt се задържа) и след това да натисна отново alt, за да напусна „режим със стрелки“ и да използвам нормални букви. Очаквам, че ще мога да натисна след това alt+D (едновременно) и да не получа стрелка, а програмен пряк път.

В момента използвам левите букви като стрелки:

; Arrows on s,d,f,e
!e::SendInput,{UP}
!s::SendInput,{LEFT}
!f::SendInput,{RIGHT}
!d::SendInput,{DOWN} 

но не мога да използвам alt+d (което е пряк път към моята програма)


person vantropf    schedule 22.09.2014    source източник


Отговори (2)


Вие сте заменили това, което прави alt-d, така че вече няма да прави нищо друго. Но кодът, който сте написали, не прави това, което описвате, че искате да направите. Мисля, че това, от което се нуждаете, е превключвател:

e::SendInput,{UP}
s::SendInput,{LEFT}
f::SendInput,{RIGHT}
d::SendInput,{DOWN}
Alt::
Hotkey, e, Toggle
Hotkey, s, Toggle
Hotkey, f, Toggle
Hotkey, d, Toggle
Return

http://ahkscript.org/docs/commands/Hotkey.htm

person Dennis_E    schedule 22.09.2014
comment
@Forivin Защо не? Използването на Alt като клавишна комбинация може да е проблематично. Все пак не бих го препоръчал. Използването на различен клавиш за бърз достъп определено ще работи. - person Dennis_E; 23.09.2014
comment
Ако сте го пробвали и е работило nvm, но afaik не можете да превключвате ::-бързи клавиши с командата за бърз клавиш. - person Forivin; 23.09.2014
comment
Да, можете също да превключвате ::-бързи клавиши с командата за бърз клавиш. Ползвам го от години. ahkscript.org/docs/commands/Hotkey.htm Командата за бърз клавиш не е проблем, използването на Alt като клавиш за бърз достъп може да бъде. - person Dennis_E; 23.09.2014

Ето едно много по-чисто решение. (Уверете се, че използвате AHK_L)

LAlt::(ArrowMode:=!ArrowMode)

#If ArrowMode
    e::Up
    s::Left
    d::Down
    f::Right
#If
person Elliot DeNolf    schedule 26.09.2014