<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Переключение задач в Windows]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=16975</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=16975&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Переключение задач в Windows».]]></description>
		<lastBuildDate>Fri, 18 Feb 2022 16:49:23 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152287#p152287</link>
			<description><![CDATA[<p>Я бы добавил в начало скрипта #UseHook, иначе посыл горячей клавишей самой себя может вызвать зацикливание. Хотя в данном конкретном случае оно, скорее всего, не произойдёт, так как меняется контекст.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Fri, 18 Feb 2022 16:49:23 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152287#p152287</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152286#p152286</link>
			<description><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>Я не совсем точно представляю, что происходит, но возможно помогут команды WinWaitClose и WinWait.</p></blockquote></div><div class="codebox"><pre><code>#If WinActive(&quot;имя окна браузера&quot;)
Enter:: WinActivate, Dialog
#If WinActive(&quot;Dialog&quot;)
Enter:: 
Send {Enter}
WinActivate, имя окна браузера
#If</code></pre></div><p>Для задачи моего макроса + этот скрипт больше ничего и требуется в рамках этой темы &quot;Переключение задач в Windows&quot;.<br />Ваш скрипт (ещё раз, Благодарю Вас за это), плюс дополнительно всего одна команда делает всё, что необходимо.<br />Мне думается, что в первом варианте скрипта (без этой команды Send), скрипт &quot;перехватывал&quot; нажатие клавиши «ENTER», а сам Диалог не получал его (Ентера). Тогда скрипт от себя отправляет это нажатие Ентера активному окну, то есть Диалогу - Диалог срабатывает как нужно и идет переключение в окно Браузера.</p>]]></description>
			<author><![CDATA[null@example.com (spets_proekt113)]]></author>
			<pubDate>Fri, 18 Feb 2022 16:42:30 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152286#p152286</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152285#p152285</link>
			<description><![CDATA[<div class="quotebox"><cite>spets_proekt113 пишет:</cite><blockquote><p>переключение в окно Браузера происходило когда перезапустится Диалог?</p></blockquote></div><p>Я не совсем точно представляю, что происходит, но возможно помогут команды WinWaitClose и WinWait.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Fri, 18 Feb 2022 15:56:24 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152285#p152285</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152284#p152284</link>
			<description><![CDATA[<p>Я отвечу себе сам - только что немного поэкспериментировал.<br />Вот такой код:<br /></p><div class="codebox"><pre><code>#If WinActive(&quot;имя окна браузера&quot;)
Enter:: WinActivate, Dialog
#If WinActive(&quot;Dialog&quot;)
Enter:: 
{
Send {Enter}
Sleep 100 
}
WinActivate, имя окна браузера
#If</code></pre></div><p>делает то, что мне нужно.<br />Может быть, он только не совсем правильно записан, тогда поправьте меня.</p><p>=========<br />Остался только один вопрос - как открыть из скрипта макрос LO.<br />Если в этой теме не ответят, только создам отдельную тему.</p>]]></description>
			<author><![CDATA[null@example.com (spets_proekt113)]]></author>
			<pubDate>Fri, 18 Feb 2022 15:15:29 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152284#p152284</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152282#p152282</link>
			<description><![CDATA[<p><strong>spets_proekt113</strong></p><p>Запишите видео, так всем станет ясно что нужно получить в итоге.</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Fri, 18 Feb 2022 15:05:47 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152282#p152282</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152281#p152281</link>
			<description><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>У нас есть правило: одна тема — один вопрос.</p></blockquote></div><p>Если что - я, сначала, прочитал ПРАВИЛА ФОРУМА.<br />А если вопросы относятся непосредственно к самой теме?! А у новичков может быть очень много вопросов, но в рамках темы.<br />Согласен, что три последних вопроса: Hotkey, открытие макроса и значения переменных из макроса можно определить в отдельные темы.</p><p>Но, тогда, остается основной вопрос:<br />Есть ли возможность дополнить предложенный Вами скрипт, чтобы переключение в окно Браузера происходило когда перезапустится Диалог?<br />Уже после своего предыдущего сообщения я подумал, что в скрипте можно попробовать &quot;отловить&quot; нажатие Ентер, но не спешить переключаться в окно Браузера, а дать возможность перезапустить Диалог.<br />Ещё раньше, я пытался использовать Sleep и WinWait, но это только пауза и не помогло в моей проблеме.</p>]]></description>
			<author><![CDATA[null@example.com (spets_proekt113)]]></author>
			<pubDate>Fri, 18 Feb 2022 14:35:17 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152281#p152281</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152279#p152279</link>
			<description><![CDATA[<p><strong>spets_proekt113</strong></p><p>Слишком много текста, учитесь сокращать. AHK способен на многие вещи как другие языки. Главной особенностью является выполнения некоторых действий в пару строчек кода. В том числе получение текста из окон, обработка и замена. Можно и своё окно сделать, добавить всяких полезных функций и многое другое. Главное правильно сформулировать желаемое действие от программы.</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Fri, 18 Feb 2022 13:53:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152279#p152279</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152278#p152278</link>
			<description><![CDATA[<div class="quotebox"><cite>spets_proekt113 пишет:</cite><blockquote><p>То, что скрипты не показывают кириллицу при выводе - может ли это быть из-за того, что у меня только Русская версия Wondows?</p></blockquote></div><p>Убедитесь, что файл скрипта сохранён в кодировке UTF-8 с <span class="bbu">BOM</span>.<br />Приведённые «неработающие» примеры команды Hotkey, очевидно, немного вводят в заблуждение. Они нужны не для создания горячих клавиш, а для динамического их изменения. Вам вообще эта команда, скорее всего, не понадобится, используйте синтаксис статических горячих клавиш, как в моём примере.<br /></p><div class="quotebox"><cite>spets_proekt113 пишет:</cite><blockquote><p>слишком много у меня вопросов</p></blockquote></div><p>Да, действительно, многовато. У нас есть <a href="https://forum.script-coding.com/rules.html#3.11.">правило</a>: одна тема — один вопрос. Не стесняйтесь создавать отдельные темы с вопросами, но старайтесь давать внятные заголовки, и формулировать вопросы как можно более кратко и чётко. Перед тем, как создать тему, воспользуйтесь поиском по нашему или англоязычному форуму. Помните, что правильно заданный вопрос содержит половину решения (как только правильно сформулируете, поймёте, что именно нужно искать, и, возможно, вопрос отпадёт сам собой).</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Fri, 18 Feb 2022 13:39:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152278#p152278</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152274#p152274</link>
			<description><![CDATA[<p>Вчера случилась такая запара, что только поздно-поздно вечером (или, даже, ночью) удалось протестировать коды и ответить.</p><div class="quotebox"><cite>Alectric пишет:</cite><blockquote><p>Но такой вариант заблокирует клавишу Ентер в других окнах.</p></blockquote></div><p>Большое спасибо за желание помочь мне.<br />За время работы скрипта+моего Диалога будет переключение только между двумя окнами: Диалог (макрос LO) и какая-то Веб-страничка - другие приложения меня, на это время, не волнуют.<br />И, возможно, именно из-за этой блокировки Ентера нет переключения обратно - этот Код переключает только в окно, что прописано в скрипте.</p><p>Код в следующем сообщении рабочий, огромное спасибо за это <strong>teadrinker</strong>.<br /></p><div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>Не очень понятно, что вы имеете в виду.</p></blockquote></div><p>Да при таком коде никакого цикла не надо - я, просто, не знал, что так можно.</p><p>Но есть один нюанс.<br />В моём Диалоге по нажатию клавиши «ENTER» происходит обработка несколько полей Диалога (текстовое и два надписей) и закрывается сам Диалог. Это я к тому, что может быть можно будет использовать какие-то переменные с этих элементов управления.<br />Как только Диалог закрылся, он, сразу же, открывается вновь. При этом, заполняются поля &quot;Надпись&quot; полученными результатами. Диалог выходит из цикла таких повторных действий по нажатию другой кнопки - &quot;Остановка макроса&quot;.</p><p>Можно ли именно этот момент &quot;поймать&quot; в скрипте - когда Диалог в макросе перезагрузился?<br />Так как, по Вашему коду происходит переключение в окно Браузера, когда ещё не перезагрузился Диалог с новым сообщением в одном из поле &quot;Надпись&quot;. А именно эта информация и будет нужна при работе с Веб-страничкой.<br />Я только позавчера узнал о существование этой программы, поэтому не знаю всех возможностей AutoHokey, но, вероятнее всего, что в данной программе это сделать не получится.<br />Как я понял, в программе AutoHotkey можно создавать скрипт со собственным Диалогом. А в таком скрипте можно будет определить этот момент - когда перезапускается Диалог?</p><p>Я пользуюсь русской офф-лайн справкой, которая подписана 2005 годом и когда некоторые коды в примерах начали выдавать ошибку или полностью не работают, то подумал, что справка устарела и новая версия программы немного с изменениями.<br />Но и во вложенной в архиве с инсталлятором англоязычной справке - там такие же нерабочие примеры. Во всяком случае, у меня так получилось - возможно, что-то не то делаю.</p><p>Поэтому, помимо выше-озвученного нюанса, у меня появилось ещё несколько вопросов.<br />Скрипт:<br /></p><div class="codebox"><pre><code>Hotkey, ^!a, , T5</code></pre></div><p>выдает ошибку.</p><p>Это я к тому, что в этом же разделе есть рабочий скрипт:<br /></p><div class="codebox"><pre><code>Hotkey, RCtrl &amp; RShift, AltTab</code></pre></div><p>На его основе хотел сделать:<br /></p><div class="codebox"><pre><code>Hotkey, Enter, AltTab ; превращает горячую клавишу &quot;Enter&quot; в Alt-Tab.</code></pre></div><p>Ошибку не выдает, но не работает как записано в скрипте. Как назначить Ентеру эту комбинацию клавиш - ALT+TAB?</p><p>Ещё два вопроса. <br />Можно ли из скрипта запустить макрос LO, который в конкретном файле?<br />Есть ли возможность из скрипта получить какие-либо значения переменных из макроса LO?</p><br /><div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>Если установили ANSI версию — измените на Unicode (64 bit, если система 64-битная).</p></blockquote></div><p>Я, сразу же, установил версию Unicode 64 bit.<br />То, что скрипты не показывают кириллицу при выводе - может ли это быть из-за того, что у меня только Русская версия Wondows?</p><p>=========<br />Да, слишком много у меня вопросов - полночи уже сижу.<br />Но они не срочные - можно с ними разбираться по мере возможности.</p>]]></description>
			<author><![CDATA[null@example.com (spets_proekt113)]]></author>
			<pubDate>Fri, 18 Feb 2022 01:22:47 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152274#p152274</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152258#p152258</link>
			<description><![CDATA[<div class="quotebox"><cite>spets_proekt113 пишет:</cite><blockquote><p>Скрипт не выводит кириллический текст</p></blockquote></div><p>Если установили ANSI версию — измените на Unicode (64 bit, если система 64-битная).</p><div class="quotebox"><cite>spets_proekt113 пишет:</cite><blockquote><p>Это всё, скорее всего, делается в цикле?</p></blockquote></div><p>Не очень понятно, что вы имеете в виду. Переключаться с одного окна на другое можно так:<br /></p><div class="codebox"><pre><code>#If WinActive(&quot;имя первого окна&quot;)
Enter:: WinActivate, имя второго окна

#If WinActive(&quot;имя второго окна&quot;)
Enter:: WinActivate, имя первого окна
#If</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Thu, 17 Feb 2022 06:00:55 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152258#p152258</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152257#p152257</link>
			<description><![CDATA[<p>Проще, думаю, так:<br /></p><div class="codebox"><pre><code>
#ifWinNotActive,имя окна
Enter::
WinActivate,имя того же окна
Return
</code></pre></div><p>Но такой вариант заблокирует клавишу Ентер в других окнах.</p><p>Пишу с телефона, могут быть ошибки.</p>]]></description>
			<author><![CDATA[null@example.com (Alectric)]]></author>
			<pubDate>Thu, 17 Feb 2022 02:36:57 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152257#p152257</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152256#p152256</link>
			<description><![CDATA[<p>Вот и пошли вопросы...<br />И для начало совсем &quot;детские&quot;.</p><p>Первый вопрос не имеет непосредственного отношения к данной теме и, возможно, где-то обсуждался, тогда поделитесь, пожалуйста, ссылкой с решением этого вопроса.<br />У меня ОС: Windows 7 Максимальная SP1 только Русская.<br />Установлен ещё английский язык на клавиатуру и он &quot;по умолчанию&quot;.<br />Установил программу AutoHotkey_1.1.33.10_setup<br />Стал тестировать примеры скриптов - с самых простых и, сразу же, понял, что у меня могут быть проблемы с этой программой.<br />Скрипт не выводит кириллический текст (заметил, что и некоторые другие символы - такие как: « ») - вместо них ромбики со знаком вопроса внутри. Понятно, что эта проблема связана с локалью на моём компе. Переустанавливать систему я не буду, но можно ли что-то сделать с программой AutoHotkey?</p><br /><p>Кое-что я, уже, успел посмотреть по этой программе и наметился некий план для дальнейшего написания нужного скрипта.<br />Но есть несколько вопросов, которые хотелось бы обсудить.</p><p>Смог скриптом запустить файл где находится мой макрос с Диалогом, но не нашёл как можно сразу запустить нужный макрос (basic LO).</p><p>Вопросы по алгоритму по моей задачи.<br />Два окна (Диалог и Браузер) будут последовательно активироваться по нажатию клавиши «Enter». Может быть, можно задать клавише «Enter» &quot;значение&quot; «ALT»+«TAB»? Тогда при любом нажатие клавиши Enter (во время работы скрипта) будет переключение задач в Windows, то есть нужных мне окон.<br />Это всё, скорее всего, делается в цикле? <br />В моём макросе Диалог возвращает значения (1 - для продолжения/перезаписи; 0 - Cancel (выход из Диалогу по крестику вверху слева самого Диалога); 12 - результата обработчика событий по нажатия кнопки Закрытие макроса (но, по большому счёту, эту кнопку можно дефолтом тоже сделать Cancel)).<br />Как взять из макроса эти значения, что бы в скрипте завести его в Loop?<br />Или как-то по-другому выйти из цикла?</p><p>Может быть кто-нибудь подскажет ответы на мои вопросы.</p><p>Заранее спасибо.</p>]]></description>
			<author><![CDATA[null@example.com (spets_proekt113)]]></author>
			<pubDate>Thu, 17 Feb 2022 01:19:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152256#p152256</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152233#p152233</link>
			<description><![CDATA[<p>Перенёс.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 16 Feb 2022 18:01:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152233#p152233</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152230#p152230</link>
			<description><![CDATA[<p>Если по моей задаче лучше всего (или легче, быстрее ...) использовать AHK, то можно попросить модераторов или администрацию форума перенести эту тему в нужный раздел.<br />Вероятнее всего, у меня будут вопросы - думается, что логичнее это делать в подходящем разделе.</p>]]></description>
			<author><![CDATA[null@example.com (spets_proekt113)]]></author>
			<pubDate>Wed, 16 Feb 2022 16:58:50 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152230#p152230</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Переключение задач в Windows]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=152229#p152229</link>
			<description><![CDATA[<p>Да верно, позволит многое автоматизировать.</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Wed, 16 Feb 2022 16:37:15 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=152229#p152229</guid>
		</item>
	</channel>
</rss>
