<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: тройные горячие клавиши]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=17081</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=17081&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: тройные горячие клавиши».]]></description>
		<lastBuildDate>Thu, 28 Apr 2022 15:09:39 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152934#p152934</link>
			<description><![CDATA[<p><strong>__Михаил__</strong></p><p>Вы навели на мысль! InputHook() похоже поможет, сейчас попробую!</p>]]></description>
			<author><![CDATA[null@example.com (eavolkov89)]]></author>
			<pubDate>Thu, 28 Apr 2022 15:09:39 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152934#p152934</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152933#p152933</link>
			<description><![CDATA[<p>Модификаторы такая вещь - их лучше не трогать от греха подальше. Можно пробовать полный перехват клавиатуры, возможно что-то выйдет. В поиске ищите: &#039;Клавиатурный хук&#039; и т.д.</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Thu, 28 Apr 2022 15:06:30 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152933#p152933</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152932#p152932</link>
			<description><![CDATA[<div class="quotebox"><cite>__Михаил__ пишет:</cite><blockquote><p>Я бы проще сделал: нажал некую клавишу - режим перехвата кнопок I, J, K, L включился, выполнил действия, снова нажал - перехват выключился.</p></blockquote></div><p>Идеально чтобы такой клавишей и был ALT <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> Но я не знаю как технически в коде реализовать перехват, так чтобы ни винда ни другие программы не словили нажатие альта. Иначе они могут уходить в свои внутренние горячие клавиши...</p>]]></description>
			<author><![CDATA[null@example.com (eavolkov89)]]></author>
			<pubDate>Thu, 28 Apr 2022 15:03:12 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152932#p152932</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152931#p152931</link>
			<description><![CDATA[<p>Я бы проще сделал: нажал некую клавишу - режим перехвата кнопок I, J, K, L включился, выполнил действия, снова нажал - перехват выключился.</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Thu, 28 Apr 2022 15:01:21 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152931#p152931</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152930#p152930</link>
			<description><![CDATA[<div class="quotebox"><cite>__Михаил__ пишет:</cite><blockquote><p>Это ж надо было такое выдумать!</p></blockquote></div><p>Идеально это научиться перехватывать нажатие ALT, а сам скрипт сделать двух режимным, типа в режиме OFF ничего не происходит, все как обычно работает, а в режиме ON скрипт начинает перехватывать нажатие ALT, выполняет то что я в него запрограммирую, и главное - не отправляет нажатие ALT дальше в винду и программы, будто этого нажатия не происходило <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (eavolkov89)]]></author>
			<pubDate>Thu, 28 Apr 2022 15:00:53 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152930#p152930</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152929#p152929</link>
			<description><![CDATA[<div class="quotebox"><cite>__Михаил__ пишет:</cite><blockquote><p>Это ж надо было такое выдумать!</p></blockquote></div><p>Ну.. если вы про саму суть задачи, то не хочется переносить правую руку на стрелочки, бекспейсы, делейты, энтеры. Хочется чтобы руки оставались всегда на ФЫВА ОЛДЖ <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />Для этого нужно зажимать что-то... были варианты с кнопками WIN и ALT, в итоге у WIN куча своих горячих виндовых сочетаний, а на ALT большинство программ вешает свои внутренние горячие клавиши, и либо надо снести их прямо во всех программах, и у некоторых есть прямо несносимые сочетания.. короче беда <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> Перепрошил клаву так чтобы вместо альта был никому не нужный скролллок, но иногда оч нужен привычный альт, и внезапно понял что у меня по-умолчанию мышь чувствительна к скроллоку, меняет её режим работы и это никак не отключить в мышке. В общем одни беды <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (eavolkov89)]]></author>
			<pubDate>Thu, 28 Apr 2022 14:54:04 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152929#p152929</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152928#p152928</link>
			<description><![CDATA[<p>Это ж надо было такое выдумать!<br /></p><div class="codebox"><pre><code>#If GetKeyState(&quot;ScrollLock&quot;) &amp;&amp; GetKeyState(&quot;LShift&quot;)

*I:: Send +{Up}
*J:: Send +{Left}
*L:: Send +{Right}
*K:: Send +{Down}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Thu, 28 Apr 2022 14:51:20 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152928#p152928</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152927#p152927</link>
			<description><![CDATA[<div class="quotebox"><cite>Phoenixxx_Czar пишет:</cite><blockquote><p>Так пробовали?<br /></p><div class="codebox"><pre><code>send, {LShift down}{up}{LShift up}</code></pre></div></blockquote></div><p>Не пробовал <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> Спасибо!</p><p>Можно ещё вопросик пожалуйста! А есть ли в AHK возможность перехватывать нажатие кнопки? Если я нажимаю ALT, то большинство программ интерпретируют это как свои внутренние горячие клавиши, и дальше уже все что я нажму дополнительно, могут вообще не выполнять, например, окно программы становится неактивным для ввода, потому что перефокусируются на свое меню... ожидает что я в них буду ковыряться... А мне просто каретку надо передвинуть не уводя руку на обычные стрелочки.</p><p>Можно ли как-то сделать так, чтобы при нажатии ALT, срабатывало например LShift + Up, но при этом сам ALT как будто не нажимался для все остальных программ, кроме AHK ?</p><p>Именно из-за того что альт используется большинством программ, пришлось перешивать клавиатуру, чтобы на этой кнопке был скроллок, но это приводит к ряду других проблем... часто нужен и альт на своем привычном месте(((</p>]]></description>
			<author><![CDATA[null@example.com (eavolkov89)]]></author>
			<pubDate>Thu, 28 Apr 2022 14:50:48 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152927#p152927</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152926#p152926</link>
			<description><![CDATA[<p>Так пробовали?<br /></p><div class="codebox"><pre><code>send, {LShift down}{up}{LShift up}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Phoenixxx_Czar)]]></author>
			<pubDate>Thu, 28 Apr 2022 14:05:34 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152926#p152926</guid>
		</item>
		<item>
			<title><![CDATA[AHK: тройные горячие клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152925#p152925</link>
			<description><![CDATA[<p>Привет формучане!</p><p>Если по короче, то понимаю что в AHK нельзя использовать тройные горячие клавиши, если как минимум 2 из них не являются контролами, шифтами, альтами и т.д., а состоят из обычных кнопок.</p><p>Загуглив нашел 2 варианта обхода этого недостатка AHK, 1 вариант:</p><div class="codebox"><pre><code>
#if GetKeyState(&quot;ScrollLock&quot;) &amp;&amp; GetKeyState(&quot;LShift&quot;)
i:: send {LShift Up}
j:: send {LShift Left}
l:: send {LShift Right}
k:: send {LShift Down}
return
</code></pre></div><p>В этом случае не срабатывает сама горячая связка клавиш. Мне нужно чтобы происходили перемещения каретки с выделением текста, т.е. эмулировались сочетания Shift + Up, Shift + Left и так далее. Вместо этого просто печатаются заглавные буквы I J K...</p><p>Второй вариант:<br /></p><div class="codebox"><pre><code>
#if GetKeyState(&quot;ScrollLock&quot;)
+i:: send {LShift Up}
+j:: send {LShift Left}
+l:: send {LShift Right}
+k:: send {LShift Down}
return
</code></pre></div><p>Тут я зажатие шифта переношу из if условия, в тело условия. В итоге вообще ничего не происходит, каретка стоит на одном месте как вкопанная.</p><p>Помогите пожалуйста понять что я делаю не так. На всякий случай повторюсь, нужно чтобы при зажатии клавиш ScrollLock + Shift + буквы (например i, j, l, k), моя каретка бегала по тексту как будто я нажимаю вместо букв стрелочки, и с зажатым шифтом, т.е. выделяла текст.</p><p>Мне кажется ошибка в синтаксисе команды send, пробовал по всякому обозначать требуемые сенды, но ни один вариант не срабатывал. Помогите, пожалуйста!</p>]]></description>
			<author><![CDATA[null@example.com (eavolkov89)]]></author>
			<pubDate>Thu, 28 Apr 2022 13:46:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152925#p152925</guid>
		</item>
	</channel>
</rss>
