<?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=12029</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=12029&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Несколько строк кода, как параметр функции.».]]></description>
		<lastBuildDate>Tue, 20 Sep 2016 15:27:07 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Несколько строк кода, как параметр функции.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=107885#p107885</link>
			<description><![CDATA[<p>А зачем тут функции?<br />Пользуйтесь #IfWinActive.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Tue, 20 Sep 2016 15:27:07 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=107885#p107885</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Несколько строк кода, как параметр функции.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=107884#p107884</link>
			<description><![CDATA[<p>Если это ваш полный скрипт, то вы передаете в функцию не инициализированную значением переменную Curves, т.е. пустую.<br />Проверка IfWinExist бессмысленна, если вы проверяете IfWinActive; также как и равенство в условии if. С таким же успехом можно написать:<br /></p><div class="codebox"><pre><code>if ((interacts(Curves) = true) = true)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (stealzy)]]></author>
			<pubDate>Tue, 20 Sep 2016 14:24:13 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=107884#p107884</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Несколько строк кода, как параметр функции.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=107880#p107880</link>
			<description><![CDATA[<p>ОК. Спасибо. Тогда такой вопрос....&nbsp; Думал, что с этим то проблем не возникнет, но что то тоже не получается:<br /></p><div class="codebox"><pre><code>
interacts(mywintitle)
{
   IfWinExist, mywintitle
   {
       IfWinActive, mywintitle
       {
          return true
       }
   }
}

~1::
if (interacts(Curves) = true)
{
        ControlFocus, PSViewC1, Curves
        ControlSend, PSViewC1, {LAlt Down}, Curves
        ControlSend, PSViewC1, {3}, Curves
        ControlSend, PSViewC1, {LAlt Up}, Curves
}
</code></pre></div><p>Так тоже не работает(((<br />Не подскажите, что сделал не правильно?</p>]]></description>
			<author><![CDATA[null@example.com (taravasya)]]></author>
			<pubDate>Tue, 20 Sep 2016 13:18:32 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=107880#p107880</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Несколько строк кода, как параметр функции.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=107878#p107878</link>
			<description><![CDATA[<p>Передавать код бессмысленно, т.к. вы не сможете его выполнить. Динамическое выполнение кода в АНК невозможно. Оно реализовано в AutoHotkey_H.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Tue, 20 Sep 2016 11:42:55 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=107878#p107878</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Несколько строк кода, как параметр функции.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=107870#p107870</link>
			<description><![CDATA[<p>Здравствуйте! Создал скрипт, который работает на ура, но в нём есть небольшой недостаток. В нём много повторяющихся/похожих строк. Хочется скомпоновать всё это в функцию.<br />Вот пример имеющегося у меня кода:<br /></p><div class="codebox"><pre><code>
~1::
IfWinExist, Curves
{
    IfWinActive, Curves
    {
        ControlFocus, PSViewC1, Curves
        ControlSend, PSViewC1, {LAlt Down}, Curves
        ControlSend, PSViewC1, {3}, Curves
        ControlSend, PSViewC1, {LAlt Up}, Curves
    }
}
Return

~LCtrl &amp; SPACE::
IfWinExist, Total Commander
{
    IfWinActive, Total Commander
    {
		Send, {SPACE}
		WinWaitActive, Комментарий,
		Send, ^{A}
		Send, {BACKSPACE}
		SendInput {Raw}ОТПЧ
		Send, {F2}
    }
}
Return
</code></pre></div><p>Как видите в обоих примерах используется одинаковая, если можно так сказать, конструкция.<br /></p><ul><li><p>Проверяем есть ли такое окно.<br />Проверяем активно ли оно.<br />Выполняем некоторые действия.</p></li></ul><p>Кроме того, имеются вложенные проверки:<br /></p><div class="codebox"><pre><code>
~NumpadENTER::
IfWinExist, Curves
{
    IfWinActive, Curves
    {
		Send, {Enter}
		WinWaitActive, Adobe Photoshop, Save changes, 1
		IfWinExist, Adobe Photoshop, Save changes
		{
			IfWinActive, Adobe Photoshop, Save changes
			{
				Send, {Enter}
				WinWaitActive, JPEG Options, , 1
				IfWinExist, JPEG Options
				{
					IfWinActive, JPEG Options
					{
						Send, {Enter}
					}
				}
			}
		}		
    }
}
</code></pre></div><p>Теперь, имеющийся код хочу укоротить, за счёт создания функции проверки окна, с названием и текстом отправляемым как параметр и выполнения ряда команд, тоже отправляемых как параметр. Знаю что, это не правильно, но что-бы было нагляднее, что мне нужно:<br /></p><div class="codebox"><pre><code>
interacts(mywintitle, myactions)
{
   IfWinExist, mywintitle
   {
       IfWinActive, mywintitle
       {
          myactions
       }
   }
}

~1::
myCurActions = ;НЕ ЗНАЮ КАК ЗДЕСЬ СОХРАНИТЬ НЕСКОЛЬКО СТРОК В ОДНУ ПЕРЕМЕННУЮ. ВОЗМОЖНО ЛИ ЭТО?
        ControlFocus, PSViewC1, Curves
        ControlSend, PSViewC1, {LAlt Down}, Curves
        ControlSend, PSViewC1, {3}, Curves
        ControlSend, PSViewC1, {LAlt Up}, Curves
interacts(Curves, myCurActions)
Return
</code></pre></div><p>Каким будет правильный синтаксис подобного кода?<br />Спасибо!</p>]]></description>
			<author><![CDATA[null@example.com (taravasya)]]></author>
			<pubDate>Tue, 20 Sep 2016 10:43:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=107870#p107870</guid>
		</item>
	</channel>
</rss>
