<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AutoHotKey: Активация только определённых окон под курсором]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=6327&amp;type=atom" />
	<updated>2011-10-20T19:48:39Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=6327</id>
		<entry>
			<title type="html"><![CDATA[Re: AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52745#p52745" />
			<content type="html"><![CDATA[<p><strong>ypppu</strong><br />Спасибо за код, всё заработало (только я через SetTimer сделал).</p>]]></content>
			<author>
				<name><![CDATA[Валк]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=19828</uri>
			</author>
			<updated>2011-10-20T19:48:39Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52745#p52745</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52636#p52636" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>Loop
{
Sleep, 100
MouseGetPos,,, Win_ID
WinGetClass, WinClass, ahk_id %Win_ID%
IF WinClass = Notepad
WinActivate, ahk_id %Win_ID%
}</code></pre></div><p>Вот, тренируйтесь на кошках. <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" /> То бишь на Блокноте.</p><p>А как поставить скрипт на паузу - описано в документации.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2011-10-18T16:38:46Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52636#p52636</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52599#p52599" />
			<content type="html"><![CDATA[<p><strong>ypppu</strong><br />Не сочти за дерзость, скажи, пожалуйста, как написать код, чтобы если у окна под мышкой ahk_class = SunAwtFrame, то это окно становилось активным, если любой другой класс, то ничего не делалось чтобы.</p><p>И как прикрутить, чтобы эту проверку можно было отключить, поставить на паузу, каким-нибудь сочетанием кнопок.</p>]]></content>
			<author>
				<name><![CDATA[Валк]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=19828</uri>
			</author>
			<updated>2011-10-18T06:27:07Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52599#p52599</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52586#p52586" />
			<content type="html"><![CDATA[<p>WinGetClass.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2011-10-17T19:20:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52586#p52586</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52583#p52583" />
			<content type="html"><![CDATA[<p>Тогда бы по идее, у меня не должны отрабатывать строки:<br /></p><div class="codebox"><pre><code>        If(Win_ID != Prev_Win_ID)
        {
            Prev_Win_ID := Win_ID
            WinActivate, ahk_id %Win_ID%
        }</code></pre></div><p>Ведь они же должны отрабатываться если ahk_class %Win_ID% = SunAwtFrame.</p><p>P. S. А какой командой определяется ahk_class? (у окон моего приложения он всегда SunAwtFrame)</p>]]></content>
			<author>
				<name><![CDATA[Валк]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=19828</uri>
			</author>
			<updated>2011-10-17T18:01:11Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52583#p52583</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52581#p52581" />
			<content type="html"><![CDATA[<p>Судя по всему, командой <em>MouseGetPos</em> Вы определяете идентификатор окна (HWND), а не класс ahk_class. А он у каждого окна свой (и вроде меняется при перезапуске приложения).</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2011-10-17T17:47:03Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52581#p52581</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52579#p52579" />
			<content type="html"><![CDATA[<p>На рабочем столе у меня расположено шесть окон рабочего приложения в режиме &quot;плитка&quot;. Если я навожу курсор мышки на любое из окон, то оно автоматически становится активным. К сожалению, если есть окна других приложений (например, музыкальный проигрыватель), то они тоже начинают становиться активными, если я навожу на них мышкой. Т. е. такое ощущение, что строк:<br /></p><div class="codebox"><pre><code>IF(ahk_class %Win_ID% = SunAwtFrame)</code></pre></div><p>не работает.</p><p>А на мышку я повесил таймер (включение/отключение), чтобы была возможность отключить этот таймер, аналогично пункту Pause Script в контекстном меню АНК в трее.</p>]]></content>
			<author>
				<name><![CDATA[Валк]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=19828</uri>
			</author>
			<updated>2011-10-17T17:14:22Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52579#p52579</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52578#p52578" />
			<content type="html"><![CDATA[<p>Для начала опишите, как это должно работать. Затем, как это работает на деле.</p><p>P. S. А зачем вешать таймер на кнопку мыши? Чтобы следить за окном под курсором, горячие клавиши не требуются.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2011-10-17T17:06:44Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52578#p52578</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AutoHotKey: Активация только определённых окон под курсором]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=52574#p52574" />
			<content type="html"><![CDATA[<p>Задача следующая, у меня есть приложение рабочее с кучей &quot;дочерних&quot; окон. В процессе работы мне надо в этих окнах делать клики, прокручивать колесо мышки и прочее. Если окно неактивное, то сначала надо клацнуть по этому окну, потом только делать необходимые действия мышкой. Клацать тоже надо аккуратно, если с дури клацнешь по управляющему элементу (например, по кнопке в этом окне), то выполнится действие. И решил я сделать так, чтобы при наведении курсором на это окно оно автоматически становилось активным. Удобно, спору нет, да только помимо этого рабочего приложения я запускаю ещё параллельно другие и вот в них мне не очень удобно работать с этой &quot;автоматической активацией&quot;. В частности, не работают ниспадающие списки меню и т. п.</p><p>Написал скрипт, по мотивам этого форума (ahk_class окон моего рабочего приложения - SunAwtFrame):<br /></p><div class="codebox"><pre><code>~LButton:: SetTimer, Activation, Off
LButton Up:: SetTimer, Activation, On

Activation:
    MouseGetPos,,, Win_ID
    IF(ahk_class %Win_ID% = SunAwtFrame)
    {
        If(Win_ID != Prev_Win_ID)
        {
            Prev_Win_ID := Win_ID
            WinActivate, ahk_id %Win_ID%
        }
    }
Return</code></pre></div><p>да только почему-то не работает он <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" /> и даже если нажать кнопку мышки предварительно притопив Shift, то скрипт на паузу не встаёт.</p><p>Помогите, пожалуйта.</p>]]></content>
			<author>
				<name><![CDATA[Валк]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=19828</uri>
			</author>
			<updated>2011-10-17T16:21:55Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=52574#p52574</id>
		</entry>
</feed>
