<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=17889&amp;type=atom" />
	<updated>2023-07-26T17:59:24Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=17889</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158893#p158893" />
			<content type="html"><![CDATA[<p>Именно в статье про KeyWait нет, но в любой команде в параметрах можно использовать переменные аналогичным образом, читайте <a href="https://www.autohotkey.com/docs/v1/Variables.htm#percent-space">здесь</a>.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2023-07-26T17:59:24Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158893#p158893</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158892#p158892" />
			<content type="html"><![CDATA[<p>В стандартной справке действительно порой мало примеров, например про &#039;KeyWait&#039; нет инфы что можно указать переменную.</p>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2023-07-26T17:54:47Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158892#p158892</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158889#p158889" />
			<content type="html"><![CDATA[<p>Если что непонятно — спрашивайте.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2023-07-26T00:18:22Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158889#p158889</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158888#p158888" />
			<content type="html"><![CDATA[<p>Спасибо, пошел разбираться. Интересно, почему я ничего подобного ни в одном из примеров не видел...</p>]]></content>
			<author>
				<name><![CDATA[RacalCucumber]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41299</uri>
			</author>
			<updated>2023-07-26T00:02:27Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158888#p158888</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158887#p158887" />
			<content type="html"><![CDATA[<p>Лучше всего устанавливать горячую клавишу по кнопке:<br /></p><div class="codebox"><pre><code>Gui, Add, Hotkey, vHK
Gui, Add, Button, gSetHotkey, Set Hotkey
Gui, Show

SetHotkey() {
   global HK
   GuiControlGet, HK
   if (HK = &quot;&quot;) {
      MsgBox Горячая клавиша не установлена!
      Return
   }
   Hotkey, % HK, Label, On
}

Label() {
   hk := SubStr(A_ThisHotkey, 0)
   MsgBox,,, Клавиша нажата, .5
   KeyWait, % hk
   MsgBox,,, Клавиша отпущена, .5
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2023-07-25T23:39:24Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158887#p158887</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158886#p158886" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>#NoEnv 
SendMode Input 

~g::
{
	Send key G pressed
	KeyWait g
	Send key G unpressed
}
Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[RacalCucumber]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41299</uri>
			</author>
			<updated>2023-07-25T23:25:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158886#p158886</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158885#p158885" />
			<content type="html"><![CDATA[<p>Первый вариант не запускается, выдаёт ошибку.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2023-07-25T23:15:22Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158885#p158885</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158884#p158884" />
			<content type="html"><![CDATA[<p>Работает:<br /></p><div class="codebox"><pre><code>#NoEnv 
; #Warn
SendMode Input 
SetWorkingDir 

~g::
{
	MsgBox key G pressed
	KeyWait g
	MsgBox key G unpressed
}
Return</code></pre></div><p>не работает, спамя нажатия и не останавливаясь на KeyWait g<br /></p><div class="codebox"><pre><code>#NoEnv  
; #Warn  ;
SendMode Input  
SetWorkingDir %A_ScriptDir%  

HK_1 = g
Gui, 1: Font, s9
Gui, 1:  Add, Hotkey, x272 y32 w120 h21, gChk vHK_1, %HK_1%
Gui, 1:  Show, w777 h446, windows
Chk:
Gui, 1:  submit, NoHide
Hotkey, ~%HK_1%, HK, on В T5 UseErrorLevel
MsgBox %HK_1%
Return

HK:
{
	MsgBox key G pressed
	KeyWait g
	MsgBox key G unpressed
}
Return</code></pre></div><p>Или второй вариант, с GUI не реализуется в рамках этого языка, кроме так варварского способа, прописать в теле макроса все кнопки в качестве хоткеев,&nbsp; от ~q:: до ~m:: и через набор условий(которое и будет в GUI назначением той или иной кнопки) или ничего не делать, если кнопка не назначена или перенаправлять исполнение на ту или иную подпрограмму?</p>]]></content>
			<author>
				<name><![CDATA[RacalCucumber]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41299</uri>
			</author>
			<updated>2023-07-25T23:03:33Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158884#p158884</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158883#p158883" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>RacalCucumber пишет:</cite><blockquote><p>Я что-то неправильно делаю</p></blockquote></div><p>Честно говоря, практически всё. Прежде всего, код, который вы запостили, невозможно запустить, сразу выдаёт ошибки. Если вы спрашиваете, как сделать так, чтобы срабатывало и при нажатии, и при отпускании, нужно понимать, что вариант при нажатии у вас работает? Если да, можете запостить рабочий код?</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2023-07-25T22:28:27Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158883#p158883</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Hotkey через GUI и Hotkey через например ~I:: на удержание]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158882#p158882" />
			<content type="html"><![CDATA[<p>Итак, задача сделать макрос, который бы при нажатии кнопки делал что то одно, а при отпускании что то другое.</p><p>В случае с хоткеями из просто макроса это делается:<br /></p><div class="codebox"><pre><code>~g::
		&lt;Делаем при нажатии&gt;
		KeyWait g
		&lt;Делаем при отпускании&gt;
	return</code></pre></div><p>И все прекрасно работает.</p><p>А как это реализовать из GUI с назначаемой кнопкой?<br /></p><div class="codebox"><pre><code>HK_1 = &quot;g&quot;
Gui, 1: Font, s9
	Gui, 1:  Add, Hotkey, x272 y32 w120 h21, gChk vHK, %HK%
	Gui, 1:  Show, w777 h446, $%$
Chk:
	Gui, 1:  submit, NoHide
	Hotkey, ~%HK_1%, HK, on В T5 UseErrorLevel
Return

HK:
		&lt;Делаем при нажатии&gt;
		KeyWait g
		&lt;Делаем при отпускании&gt;
	return</code></pre></div><p>не останавливается на &quot;KeyWait g&quot;</p><p>Я что-то неправильно делаю или из GUI такое не получится сделать? И если неправильно - то что неправильно?</p>]]></content>
			<author>
				<name><![CDATA[RacalCucumber]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41299</uri>
			</author>
			<updated>2023-07-25T22:00:02Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158882#p158882</id>
		</entry>
</feed>
