Hallo alle zusammen,
ich hab in meinem Script das ich schreibe ein Array mit den Dimensionen [17][4], also ein zweidimensionales. Nun brauch ich in einer Funktion zum immer nur z.B. $array[4]. Da ich nun aber nich jedesmal den Index neu dazuschreiben will (wird aus mehreren Variablen zusammengesetzt und sieht daher unschön aus wenns jedesmal aufs neue auftaucht ) wollt ich jetzt also von diesem Element die 2. Dimension in ein eindimensionales kopieren.
Aber ich merk scho ... beschreiben lässt sich das nur sehr schwer, ich zeig euch mal an nem Test-Script was ich mein
[autoit]
#include <Debug.au3>
#include <array.au3>
_DebugSetup("Test-Session")
Dim $test[3][2]
[/autoit][autoit][/autoit][autoit]_DebugOut("Filling arrays with some data")
$test[0][0] = "0;0"
$test[0][1] = "0;1"
$test[1][0] = "1;0"
$test[1][1] = "1;1"
$test[2][0] = "2;0"
$test[2][1] = "2;1"
_DebugOut("$test has " & UBound($test, 0) & " dimensions")
_DebugOut("Dimension 1 has " & UBound($test) & " Elements")
_DebugOut("Dimension 2 has " & UBound($test, 2) & " Elements")
_ArrayDisplay($test[0])
_DebugOut("$test[0] has " & UBound($test[0]) & " Elements") ; Hierbei stürzt die ganze Kiste immer mit der unten geschriebenen Fehlermeldung ab
; Ziel dieser ganzen Prozedur ist eigentlich folgendes auszuführen:
$element = $test[1] ; Hier stürzt das ganze Theater genauso ab
; So könnt ich jetzt einfach zugreifen:
; $element[0] wäre "1;0" und $element[1] wäre "1;1"
#comments-start
>Running:(3.2.10.0):G:\AutoIt3\autoit3.exe "G:\Documents\Ausbildung\SGH2007\Test.au3"
G:\Documents\Ausbildung\SGH2007\Test.au3 (18) : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
_DebugOut("$test[0] has " & UBound($test[0]) & " Elements")
_DebugOut("$test[0] has " & UBound(^ ERROR
->14:53:27 AutoIT3.exe ended.rc:1
+>14:53:28 AutoIt3Wrapper Finished
>Exit code: 1 Time: 3.790
#comments-end
Mein erster Gedanke war eigentlich, dass ich vllt. $element auf ne bestimmte Art und Weise diemensionieren muss. Also hab ichs mit dim $element[4] probiert und noch etlichen weiteren. Auch z.B. mit dim $element[1][4] und ähnlichem. Um die genauen Dimensionen rauszufinden habsch dann halt ma die Zeile mit dem Ubound($test[0]) geschrieben und siehe da ... auch dort verabschiedete er sich mit dieser Fehlermeldung wobei es dort ja noch gar keine Variablenzuweisungen gab.
Daher nun meine Frage an euch: gibts es irgendeine Möglichkeit das umzusetzen (außer vllt. manuell die zweite Dimension stück für Stück rauszukopieren)? Ich wäre euch sehr dankbar für ne Idee
mfg, mh166