<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8831&amp;type=atom" />
	<updated>2013-10-29T12:16:25Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=8831</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76660#p76660" />
			<content type="html"><![CDATA[<p>Вот только его окончательно доделаю, там флаги по маскам (2 4 8 16 32 64) т.е. каждое открытое окно имеет от 0 до 5 состояний, которые отслеживаются по одному постоянно работающему таймеру - пока есть ещё ошибки и недочёты.<br />По сути это реализация многопоточности в одном потоке (квантование процессов), а флаг это семафор (достаточно сложный). <br />Я просто вспомнил, чему учили в институте (да ели вспомнил, столько лет прошло), и решил попробовать реализовать на практике. <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2013-10-29T12:16:25Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76660#p76660</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76654#p76654" />
			<content type="html"><![CDATA[<p>Проблема решена. Насчет фрагмента диспетчера не откажусь посмотреть, возможно ваш вариант будет более удобен мне или во всяком случае будет удобен для людей со схожей проблемой.</p>]]></content>
			<author>
				<name><![CDATA[Странникх]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=30605</uri>
			</author>
			<updated>2013-10-29T11:58:07Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76654#p76654</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76611#p76611" />
			<content type="html"><![CDATA[<p>Если ещё осталась проблема то она из за таймера - он не отключается, у меня было нечто подбное в скрипте который обрабатывает всё, от окон, до игр - пришлось написать внутренний диспечер, который всё отлавливает и отключает то что уже не нужно, могу дать его фрагмент, правда он навороченный и работает по маскам, т.е. <strong>Состояние Задачи </strong>=<strong> Задача</strong> &amp; <strong>Маска стастуса</strong></p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2013-10-29T02:37:31Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76611#p76611</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76595#p76595" />
			<content type="html"><![CDATA[<p>Как оказалось эта строчка еще как помогает. Вот решение:<br /></p><div class="codebox"><pre><code>*!Tab:: AltTabAndMenu

vk61::
IfWinNotActive, Skype
SetTimer, SendB, Off 
SetTimer, SendA, Off 
Send {T Up}{Е Up}{Shift UP}

IfWinActive, Skype
 If isKeyPressed := !isKeyPressed  
 SetTimer, SendA, 40  
 Else
 {
IfWinNotActive, Skype
{
SetTimer, SendB, Off 
SetTimer, SendA, Off 
Send {T Up}{Е Up}{Shift UP}
}

        SetTimer, SendA, Off            
        SoundPlay E:\Scripts\1.mp3   
        Send {T Down}{Е Down}    
         SetTimer, SendB, 60000 
 }
 KeyWait, vk61 
 return

SendA:
IfWinNotActive, Skype
{
SetTimer, SendB, Off 
SetTimer, SendA, Off 
Send {T Up}{Е Up}{Shift UP}
}

SetTimer, SendB, Off 
SoundPlay E:\Scripts\2.mp3   
Send {T Up}{Е Up}
return

SendB:
IfWinNotActive, Skype
{
SetTimer, SendB, Off 
SetTimer, SendA, Off 
Send {T Up}{Е Up}{Shift UP}
}
Send {T UP}{Е Up}   
SetTimer, SendB, Off 
return</code></pre></div><p>И даже не вызывает конфликтов во время зажатия T(Е), которое не позволяло листать вкладки.</p>]]></content>
			<author>
				<name><![CDATA[Странникх]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=30605</uri>
			</author>
			<updated>2013-10-28T16:22:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76595#p76595</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76592#p76592" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>*!Tab:: AltTabAndMenu</code></pre></div><p>Тоже самое что и </p><div class="codebox"><pre><code>#InstallKeybdHook</code></pre></div><p>, дальше предыдущей вкладки пролистнуть не дает. Вот странно, стоит параметр </p><div class="codebox"><pre><code>IfWinActive, Skype</code></pre></div><p>, значит скрипт совершает что-то вроде reload , когда происходит альтаб, но во время нажатия Alt+Tab такое чувство , что нажимается еще и T(Е), и Shift. Возможно решение кроется в примерно этом: </p><div class="codebox"><pre><code>IfWinNotActive, Skype
SetTimer, SendB, Off 
SetTimer, SendA, Off 
Send {T Up}{Е Up}{Shift UP}</code></pre></div><p>Но дело в том, что эта строчка не помогает.</p>]]></content>
			<author>
				<name><![CDATA[Странникх]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=30605</uri>
			</author>
			<updated>2013-10-28T16:11:10Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76592#p76592</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76590#p76590" />
			<content type="html"><![CDATA[<p>Попробуй в свой скрипт добавить:</p><div class="codebox"><pre><code>*!Tab:: AltTabAndMenu</code></pre></div><p>Может и поможет.</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2013-10-28T15:58:10Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76590#p76590</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76589#p76589" />
			<content type="html"><![CDATA[<p>При нажатии Alt+Tab должно позволять листать вкладки без нажатия лишних Shift и др. лишних клавиш. T(Е русская) всего лишь кнопка для спама в чат. Может возможно сделать что-то вроде break или pause при альтабе, так как возможно таймеры в скрипте не останавливаются даже тогда когда Skype окно не активно.</p>]]></content>
			<author>
				<name><![CDATA[Странникх]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=30605</uri>
			</author>
			<updated>2013-10-28T15:53:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76589#p76589</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76588#p76588" />
			<content type="html"><![CDATA[<p>А что должно происходить по нажатию Alt+Tab+T+E?</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2013-10-28T15:45:17Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76588#p76588</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Проблемы с клавиатурой используя двойное нажатие и soundplay]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76587#p76587" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>NumPad1::
IfWinActive, Skype
 If isKeyPressed := !isKeyPressed  
 SetTimer, SendA, 100  
 Else
 {
        SetTimer, SendA, Off            
        SoundPlay E:\Scripts\1.mp3  
        Send {T Down}{Е Down}    
         SetTimer, SendB, 60000 
 }
 KeyWait NumPad1 
 return

SendA:
SetTimer, SendB, Off 
SoundPlay E:\Scripts\2.mp3   
Send {T Up}{Е Up}
return

SendB:
Send {T UP}{Е Up}   
SetTimer, SendB, Off 
return</code></pre></div><p>Скрипт работает прекрасно, но когда нужно альтабнуться, то порой ничего не происходит, также наблюдаю проблемы с зажатым шифтом после альтаба. Написал в начало кода:<br /></p><div class="codebox"><pre><code>IfWinNotActive, Skype
Send {Shift Up}</code></pre></div><p>С шифтом проблем вроде не наблюдаю, но я не могу нормально альтабнуть периодически. Как будто при нажатии Alt+Tab зажимается что-то еще лишнее.<br />upd: Добавил параметр </p><div class="codebox"><pre><code>#InstallKeybdHook</code></pre></div><p> вкладка меняется на предыдущую при использовании Alt+Tab, но все равно почему-то зажимается то ли Shift, то ли еще что-то лишнее и не дает листать вкладки Tab&#039;ом зажимая Alt</p>]]></content>
			<author>
				<name><![CDATA[Странникх]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=30605</uri>
			</author>
			<updated>2013-10-28T15:20:22Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76587#p76587</id>
		</entry>
</feed>
