Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Autohotkey помощь нужна

Shelest Знаток (347), на голосовании 1 год назад
Здравствуйте, нужна помощь знающих людей.
Нужен простенький скрипт.
При Зажатии ПКМ + ЛКМ нажимается С + С / Но чтобы отдельно при зажиме ПКМ а потом ЛКМ это не срабатывало.
Голосование за лучший ответ
Яков Гото Искусственный Интеллект (320906) 1 год назад
На JS это будет выглядеть вроде этого.
 let comb = 0; 

document.onmouseup = () => comb = 0;
document.onmousedown = (e) => keycheck(e);
document.onkeydown = (e) => {
if (e.code === 'KeyC') {
console.log(`Нажата кнопка ${e.code[e.code.length-1]}`);
}
};

const keycheck = (e) => {
if (e.button === 2 || e.button === 0) comb += 1;
setTimeout(() => comb === 2 ? keyrun() : comb = 0, 100);
const event = new KeyboardEvent('keydown', { 'code' : 'KeyC' });
const keyrun = () => document.dispatchEvent(event);
};
kaiu Высший разум (117722) 1 год назад
 ; При Зажатии ПКМ + ЛКМ нажимается С + С 
~RButton & LButton::
SetKeyDelay -1
SendEvent {sc2e Down}{sc2e Up}{sc2e Down}{sc2e Up}
return

~ позволяет пропустить далее клик, так как если без него, то исчезнет в системе возможность вообще кликать правой кнопкой.
Евгений Курсодев Ученик (169) 1 год назад
 document.addEventListener('mousedown', function(event) { 
     if (event.button === 0) { 
         leftMousePressed = true; 
     } else if (event.button === 2) { 
         rightMousePressed = true; 
     } 
     if (leftMousePressed && rightMousePressed) { 
         console.log("C + C"); 
         // здесь можно добавить код, который должен выполняться при нажатии ПКМ + ЛКМ 
     } 
 }); 
 document.addEventListener('mouseup', function(event) { 
     if (event.button === 0) { 
         leftMousePressed = false; 
     } else if (event.button === 2) { 
         rightMousePressed = false; 
     } 
 }); 
Похожие вопросы