<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Несколько значений в переменной]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=15490&amp;type=atom" />
	<updated>2020-06-28T08:57:35Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=15490</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140460#p140460" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>__Михаил__ пишет:</cite><blockquote><p>А есть разница?</p></blockquote></div><p>Если пишете скрипт для себя, тогда как нравится, если выкладываете на форум — лучше придерживаться общепринятого синтаксиса.<br /></p><div class="quotebox"><cite>__Михаил__ пишет:</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>2020-06-28T08:57:35Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140460#p140460</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140451#p140451" />
			<content type="html"><![CDATA[<p><strong>Phoenixxx_Czar</strong></p><p>1) А есть разница? Присваивание переменной значения особо не играет роли, лишь бы синтаксис был верным и выполнял задуманной цели.<br />Или я чего не понимаю в вашем вопросе?</p><p>2) Многоуровневые массивы / списки массивов и прочее в данном варианте лишний раз запутают. Куда проще видеть ключ:значение. Где ключ равен цифре и соответственно индексу в массиве.</p><p>В любом случае, каждый сам решает как программировать конкретно ему и в данный момент. Иногда через месяц другой можно научиться многим тонкостям и пойти править старый &#039;быдлокод&#039; в &#039;элитный&#039;.</p>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2020-06-28T01:27:05Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140451#p140451</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140448#p140448" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Nerv0z пишет:</cite><blockquote><p>ArrayItems := {1: &quot;яблоко&quot;,2: &quot;банан&quot;,3: &quot;апельсин&quot;,4: &quot;ананас&quot;,5: &quot;,папая&quot;}<br />ArrayPrice := {1: 46500,2: 19350,3: 33000,4: 26800,5: 145500}</p></blockquote></div><p>Тут наверное лучше использовать многомерный (вроде это так называлось) объект.</p><div class="codebox"><pre><code>
arrayItems := [{name: &quot;яблоко&quot;, price: 46500} ; 1
			  ,{name: &quot;банан&quot;, price: 19350} ; 2
			  ,{name: &quot;апельсин&quot;, price: 33000} ; 3
			  ,{name: &quot;ананас&quot;, price: 26800} ; 4
			  ,{name: &quot;папая&quot;, price: 145500}] ; 5 ....

msgbox, % &quot;Name: &quot; arrayItems[2].name &quot;`nPrice: &quot; arrayItems[2].price
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Phoenixxx_Czar]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34426</uri>
			</author>
			<updated>2020-06-28T00:58:27Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140448#p140448</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140447#p140447" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>__Михаил__ пишет:</cite><blockquote><p><strong>Nerv0z</strong><br /></p><div class="codebox"><pre><code>
Clipboard = % ArrayItems[i] ; Заменить буфер.
Clipboard = % R ; Вернуть буфер
</code></pre></div></blockquote></div><p>Почему бы не использовать &quot;:=&quot;?</p>]]></content>
			<author>
				<name><![CDATA[Phoenixxx_Czar]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34426</uri>
			</author>
			<updated>2020-06-28T00:51:15Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140447#p140447</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140444#p140444" />
			<content type="html"><![CDATA[<p>Понял, сейчас попрбобую..</p>]]></content>
			<author>
				<name><![CDATA[Nerv0z]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40327</uri>
			</author>
			<updated>2020-06-27T21:54:36Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140444#p140444</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140441#p140441" />
			<content type="html"><![CDATA[<p><strong>Nerv0z</strong></p><p>Тоже сталкиваясь с такой проблемой, я обычно пересоздавал файл и копировал в него участки кода. Глупо, зато эффективно. Не искал способов решить иначе.</p><p>По вашему последнему коду, могу посоветовать вместо команды эмуляции ввода из переменной, сделать вставку через буфер. Так будет гораздо быстрее.</p><div class="codebox"><pre><code>F2::
ArrayItems := {1: &quot;яблоко&quot;,2: &quot;банан&quot;,3: &quot;апельсин&quot;,4: &quot;ананас&quot;,5: &quot;папая&quot;}
i ++

R := Clipboard	; Сохранить текущий буфер.
Clipboard = % ArrayItems[i] ; Заменить буфер.
Send ^{vk56}	; Ctrl + V Вставить текст из буфера.
Clipboard = % R ; Вернуть буфер
Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2020-06-27T21:12:33Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140441#p140441</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140440#p140440" />
			<content type="html"><![CDATA[<p><strong>__Михаил__</strong><br />А по моему вопросу не подскажите, Михаил&nbsp; ? в чем может быть проблема с вопросиками..</p>]]></content>
			<author>
				<name><![CDATA[Nerv0z]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40327</uri>
			</author>
			<updated>2020-06-27T21:02:45Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140440#p140440</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140439#p140439" />
			<content type="html"><![CDATA[<p><strong>qqlexa</strong></p><p>1) Кодирую не первый день, АХК создаёт переменную, если её не объявили. Таким образом её можно не указывать.</p><p>2) Для теста да, не нужно использовать переменную &#039;i&#039;, но ведь когда <strong>Nerv0z</strong> будет использовать вставку из словаря, ему будет не нужна переменная из цикла, ведь цикла не будет, верно? Поэтому я и ввёл переменную в код.</p>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2020-06-27T21:01:20Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140439#p140439</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140437#p140437" />
			<content type="html"><![CDATA[<p><strong>qqlexa</strong><br />Оформил код согласно замечаниям..<br />нет, loop мне не подходит, потому что у меня переходы между блоками происходят.. <br />Да и проблема осталась не в этом.. <br />Кодировка или что то теряется, при чтении массива..</p>]]></content>
			<author>
				<name><![CDATA[Nerv0z]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40327</uri>
			</author>
			<updated>2020-06-27T20:46:31Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140437#p140437</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140436#p140436" />
			<content type="html"><![CDATA[<p><strong>Nerv0z</strong>, оформление кода только в теге <strong>code</strong><br />Вместо <strong>Block0</strong> и <strong>goto Block0</strong> используйте бесконечный цикл loop{}<br /><a href="http://forum.script-coding.com/viewtopic.php?id=73">Язык по умолчанию</a></p>]]></content>
			<author>
				<name><![CDATA[qqlexa]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=39096</uri>
			</author>
			<updated>2020-06-27T20:16:42Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140436#p140436</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140434#p140434" />
			<content type="html"><![CDATA[<p>Подскажите, еще совет, вот как я всё оформил :</p><div class="codebox"><pre><code>
;FileEncoding, UTF-8

i := 1

ArrayItems := {1: &quot;яблоко&quot;,2: &quot;банан&quot;,3: &quot;апельсин&quot;,4: &quot;ананас&quot;,5: &quot;,папая&quot;}
ArrayPrice := {1: 46500,2: 19350,3: 33000,4: 26800,5: 145500}

F1::
Block0:
; Клик на строку ввода
MouseClick, left,  70,  120 ;
Sleep, 500

; Вводим требуемый предмет
Send, % ArrayItems&quot;i&quot;
Sleep, 500

; Клик по 
MouseClick, left,  480,  80 ;
Sleep, 500

; Клик в строку 
MouseClick, left,  920,  180 ;
Sleep, 500

; Вводим сумму 
Send, % ArrayPrice:&quot;i&quot;
Sleep, 500 

; Клик на ОК
MouseClick, left,  730,  460 ;
Sleep, 1000 

; Клик на Строке предмета
MouseClick, left,  145,  165 ;
Sleep, 500 

i++
goto Block0
Return

F4::
ExitApp
Return

</code></pre></div><p>Скрипт отрабатывает идеально, но !!!<br />Вопрос в кодировке, у меня вместо значений из массива Предметов, выводятся знаки &quot;????????&quot;<br />как это побороть ?</p>]]></content>
			<author>
				<name><![CDATA[Nerv0z]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40327</uri>
			</author>
			<updated>2020-06-27T20:09:46Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140434#p140434</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140429#p140429" />
			<content type="html"><![CDATA[<p><strong>__Михаил__</strong>, у вас же не определён индекс і, ну и, имхо, если использовать индекс только в цикле,&nbsp; лучше использовать A_Index, о переменных можно почитать <a href="http://www.script-coding.com/AutoHotkey/Variables.1.0.46.07.html">тут</a></p>]]></content>
			<author>
				<name><![CDATA[qqlexa]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=39096</uri>
			</author>
			<updated>2020-06-27T19:54:59Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140429#p140429</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140428#p140428" />
			<content type="html"><![CDATA[<p>Спасибо, кажется понял, сейчас попробую это написать в коде.</p>]]></content>
			<author>
				<name><![CDATA[Nerv0z]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40327</uri>
			</author>
			<updated>2020-06-27T19:43:04Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140428#p140428</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140427#p140427" />
			<content type="html"><![CDATA[<p><strong>Nerv0z</strong></p><p>Вроде пример годный. Что ещё можно добавить?</p><p>Может так понятнее будет:</p><div class="codebox"><pre><code>F2::
Array := {1: 46500, 2: 19350, 3: 33000, 4: 26800, 5: 145500}
maxL := Array.Length()

loop, % maxL
{
 i += 1
 ToolTip, % Array[i]
 Sleep, 1000
}
ToolTip
Return</code></pre></div><p>Другими словами: Создайте свой словарь, и когда нужно используйте из него нужный индекс:</p><div class="codebox"><pre><code>Send, % Array[i]</code></pre></div><p>Затем прибавляем к переменной &#039;i&#039; значение, что бы далее была вставка следующей строки:</p><div class="codebox"><pre><code>i += 1</code></pre></div>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2020-06-27T19:30:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140427#p140427</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Несколько значений в переменной]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140426#p140426" />
			<content type="html"><![CDATA[<p><strong>ypppu</strong><br />А как мне обратится к каждому из значений в массиве ?<br />То есть, мне в цикле нужно ввести %Предмет% и %Цена%</p><p>В массиве это будет Array := {1: 46500,}</p><p>Как мне получить это значение в следующем блоке ?</p><p>вот таким запросом :<br /></p><div class="codebox"><pre><code>
; Вводим требуемый предмет
Send, %Items%
Sleep, 100 
</code></pre></div><p>??</p>]]></content>
			<author>
				<name><![CDATA[Nerv0z]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40327</uri>
			</author>
			<updated>2020-06-27T19:24:32Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140426#p140426</id>
		</entry>
</feed>
