<?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=15092&amp;type=atom" />
	<updated>2019-12-12T08:20:12Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=15092</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Заполнение двумерного массива через функцию, вывод первого.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=136821#p136821" />
			<content type="html"><![CDATA[<p><strong>Phoenixxx_Czar</strong><br />Спасибо большое, думал что таким образом только глобализуется массив, впредь буду внимательнее!</p>]]></content>
			<author>
				<name><![CDATA[Barrel Tittor]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40529</uri>
			</author>
			<updated>2019-12-12T08:20:12Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=136821#p136821</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Заполнение двумерного массива через функцию, вывод первого.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=136814#p136814" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Barrel Tittor пишет:</cite><blockquote><p>global MacrosAr:=[]</p></blockquote></div><p>Вы в цикле каждый раз обнуляете массив.</p>]]></content>
			<author>
				<name><![CDATA[Phoenixxx_Czar]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34426</uri>
			</author>
			<updated>2019-12-11T21:18:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=136814#p136814</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Заполнение двумерного массива через функцию, вывод первого.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=136803#p136803" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Barrel Tittor пишет:</cite><blockquote><p>очень сложно разобраться</p></blockquote></div><p>Также сложно разобраться в вашем коде. Вот простой пример заполнения двумерного массива, делайте по образцу:<br /></p><div class="codebox"><pre><code>text =
(
a b c d
e f g h
i j k l
m n o p
)

arr := CreateArray(text)
for k, v in arr
   MsgBox, % v[1] &quot; &quot; v[2] &quot; &quot; v[3] &quot; &quot; v[4]

CreateArray(text) {
   arr := []
   Loop, parse, text, `n, `r
      arr[A_Index] := StrSplit(A_LoopField, &quot; &quot;)
   Return arr
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2019-12-11T15:26:47Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=136803#p136803</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Заполнение двумерного массива через функцию, вывод первого.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=136799#p136799" />
			<content type="html"><![CDATA[<p><strong>Добрый день!</strong><br />Начал работать с многомерными массивами недавно, очень сложно разобраться. Ниже представлен код, в нем функция заполняет массив(двумерный) через парсинг и выводит его путем глобализации.<br />Проблема состоит в том, что почему-то, заполняется только последний элемент(последний подмассив), никак не могу найти ошибку, помогите пожалуйста!</p><div class="codebox"><pre><code>Example := &quot;moveR 5 6`n`nMoveR 3 4&quot;

GetMacrosScript(MacrosScript)
{
	Loop, Parse, % MacrosScript, % &quot;`n`r&quot;
	{
		CommandTemp := A_LoopField
		StringIndex += 1
		MsgBox, % StringIndex
		global MacrosAr:=[]
		if CommandTemp contains MoveR
		{
			Erri := 0
			Loop, Parse, % CommandTemp, % &quot; &quot;
			{
				if (A_Index = 2+Erri)
				{
					if (A_LoopField &lt;&gt; &quot;&quot;) and (A_LoopField &lt;&gt; &quot;MoveR&quot;)
						MoveX := A_LoopField
					else
						Erri+=1
				}
				if (A_Index = 3+Erri)
				{
					if (A_LoopField &lt;&gt; &quot;&quot;) and (A_LoopField &lt;&gt; &quot;MoveR&quot;)
					{
						MoveY := A_LoopField
						break
					}
					else
						Erri+=1
				}
			}
			MacrosAr[StringIndex] := [&quot;MoveR&quot;, MoveX, MoveY]
		}
	}
}

GetMacrosScript(Example)
for index, element in MacrosAr
{
	MsgBox, % &quot;Строка номер: &quot; index &quot;, Команда: &quot; MacrosAr[index][1] &quot;, Параметр 1: &quot; MacrosAr[index][2] &quot;, Параметр 2: &quot; MacrosAr[index][3]
}</code></pre></div><p>MsgBox выводит только 2 элемент основного массива и соответственно его подмассив, очень мало информации на AHK-Wiki по этой теме и здесь на форуме тоже особо ничего не нашел(.</p>]]></content>
			<author>
				<name><![CDATA[Barrel Tittor]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40529</uri>
			</author>
			<updated>2019-12-11T13:20:51Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=136799#p136799</id>
		</entry>
</feed>
