<?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=6033</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=6033&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Разовое выполнение действий над окном при его создании».]]></description>
		<lastBuildDate>Thu, 21 Jul 2011 13:25:26 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Разовое выполнение действий над окном при его создании]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50062#p50062</link>
			<description><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><div class="quotebox"><cite>embarcadero пишет:</cite><blockquote><p>P.S. Подскажите, где можно поменять название темы на&nbsp; &quot;Разовое выполнение команды при создании нового окна&quot; чтобы было более информативным?</p></blockquote></div><p>Редактируя первый пост.</p></blockquote></div><p>спасибо</p>]]></description>
			<author><![CDATA[null@example.com (embarcadero)]]></author>
			<pubDate>Thu, 21 Jul 2011 13:25:26 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50062#p50062</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Разовое выполнение действий над окном при его создании]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50061#p50061</link>
			<description><![CDATA[<div class="quotebox"><cite>embarcadero пишет:</cite><blockquote><p>P.S. Подскажите, где можно поменять название темы на&nbsp; &quot;Разовое выполнение команды при создании нового окна&quot; чтобы было более информативным?</p></blockquote></div><p>Редактируя первый пост.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Thu, 21 Jul 2011 13:07:58 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50061#p50061</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Разовое выполнение действий над окном при его создании]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50060#p50060</link>
			<description><![CDATA[<p><strong>Проблема</strong> состоит в следующем: окну должна посылаться определенная команда, но только один раз: при его создании.</p><p><strong>Зачем это нужно</strong>: я пользуюсь программой Hydravision (входит в комплект Catalist Control Centre). <br />Данная программа создает сетку на рабочем столе (делит его на области)<br />При этом в контекстное меню заголовка любого окна добавляется новая команда: &quot;Прикрепить к сетке&quot;.<br />Каждый раз когда я запускаю любое приложение (браузер, текстовый редактор, проводник и т.д.) я вынужден кликать правой кнопкой по заголовку окна и выбирать команду &quot;Прикрепить к сетке&quot;.<br />Мне нужно, чтобы все(!!!) приложения запускались уже прикрепленными к сетке (развернутыми в определенной области экрана), но пока что я тестирую скрипт только на калькуляторе, к тому же использую вместо &quot;Прикрепить к сетке&quot; команду &quot;Свернуть&quot;, потому как тестирую скрипт на другой машине, где гидрагрид не установлен.</p><p><strong>Решение</strong>. Самый простой способ который я нашел это послать окну после его создания сочетание клавиш <br />&quot;ALT + SPACE &quot; далее стрелочками выбираем нужную команду и нажимаем ENTER <br />(есть еще способ с помощью функции PostMessage)</p><p>Предпоследний скрипт не подходит:</p><div class="codebox"><pre><code>Loop
{
WinWait, Калькулятор 
WinMinimize, Калькулятор 
}</code></pre></div><p>так как сворачивает калькулятор постоянно, а нужно чтобы только 1 раз при создании окна.</p><p>Последний скрипт тоже не подходит, т.к. если используется <em>loop</em>, то нужно отслеживать к каким окнам команда уже применялась и не применять ее второй раз. В исходном (моем) скрипте хэндлы окон запоминаются в переменной <strong>proc</strong>, но почему-то скрипт не работает должным образом.</p><p>P.S. Подскажите, где можно поменять название темы на&nbsp; &quot;<strong>Разовое выполнение команды при создании нового окна</strong>&quot; чтобы было более информативным?</p>]]></description>
			<author><![CDATA[null@example.com (embarcadero)]]></author>
			<pubDate>Thu, 21 Jul 2011 13:04:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50060#p50060</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Разовое выполнение действий над окном при его создании]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50058#p50058</link>
			<description><![CDATA[<p>Попробуйте это<br /></p><div class="codebox"><pre><code>f1::
loop
{
winwait, ahk_class SciCalc
WinGet, wid_list, List, ahk_class SciCalc
loop, %wid_list%
{
w := wid_list%A_Index%
WinGet, wid, minmax, ahk_id %w%
if wid = 0
{
WinMinimize, ahk_id %w%
}
}
}
return</code></pre></div><p>Единственно что после активации вам не удастся развернуть окна калькуляторов, для этого можно еще добавить паузу для скрипта по нажатию средней кнопки мыши, ещё раз нажать и окна снова начнут сворачиваться<br /></p><div class="codebox"><pre><code>MButton::
Pause
return</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (MixaLich)]]></author>
			<pubDate>Thu, 21 Jul 2011 12:45:53 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50058#p50058</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Разовое выполнение действий над окном при его создании]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50055#p50055</link>
			<description><![CDATA[<p><span style="color: green">Сразу замечу, что информативность заголовка темы нулевая. Отредактируйте его так, чтобы он отражал суть.</span></p><div class="quotebox"><cite>embarcadero пишет:</cite><blockquote><p>Скрипт должен при появлении окна калькулятора свернуть его.</p></blockquote></div><div class="codebox"><pre><code>Loop
{
WinWait, Калькулятор 
WinMinimize, Калькулятор 
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (ypppu)]]></author>
			<pubDate>Thu, 21 Jul 2011 12:00:30 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50055#p50055</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Разовое выполнение действий над окном при его создании]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50052#p50052</link>
			<description><![CDATA[<p>Здравствуйте. <br />Помогите, пожалуйста, разобраться, что не так в скрипте.<br />Скрипт должен при появлении окна калькулятора свернуть его. <br />При этом требуется выполнять сворачивание над каждым вновь появляющимся окном калькулятора, но только один раз.</p><br /><div class="codebox"><pre><code>; #NoTrayIcon

SetTimer, timer_MonitorWindows, 1000
return

timer_MonitorWindows:
WinGet, wid_list, List, ahk_class SciCalc
Loop, %wid_list%
{
    wid := wid_list%A_Index%
    if ( ! (proc[%wid%]) )
    {
        proc[%wid%] := true
        WinActivate, ahk_id %wid%
        Send, !{SPACE} {DOWN 3} {ENTER}
    }
}
Return

^!0::
MsgBox Скрипт &quot;Калькулятор&quot; будет завершён.
ExitApp
return</code></pre></div><p>Плоблема скрипта в зацикливании: скрипт сворачивает окно калькулятора потом восстанавливает и вновь сворачивает и так бесконечно.</p><br /><p>P.S.: Пример - тестовый, взят вот отсюда: <br /><a href="http://www.script-coding.com/AutoHotkey/AhkWin.html">http://www.script-coding.com/AutoHotkey/AhkWin.html</a></p>]]></description>
			<author><![CDATA[null@example.com (embarcadero)]]></author>
			<pubDate>Thu, 21 Jul 2011 11:09:01 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50052#p50052</guid>
		</item>
	</channel>
</rss>
