Zurück   Flashforum > Flex und AIR > Flex programmieren

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-01-2009, 20:57   #1 (permalink)
n00b
 
Registriert seit: Jun 2005
Beiträge: 271
Array in Schleife befüllen

Hallo, so langsam komme ich dahinter mit Flex zuarbeiten und auch AS3 macht immer mehr Spass. Aber irgendwie stoße ich immer wieder schnell auf Probleme.

Ich habe ein Accordion dem ich mit folgender Funktion neue childs anfüge:
Code:
/* ADD NEW ACCORDION CHILD */
            private var addNewChildIndex:Number = 2;
            
            private function addNewChild():void
            {
                var form:Form = new Form();
                var formitem:FormItem = new FormItem();
                var textinput:TextInput = new TextInput();
                                
                form.label 			= "New "+addNewChildIndex;
                formitem.label 		= "Header";
                form.percentWidth	= 100;
                form.percentHeight	= 100;
                
                formitem.percentWidth	= 100;  
                         
                textinput.id 			= "head"+addNewChildIndex;
                textinput.percentWidth	= 100;
                
                              
                formitem.addChild(textinput)
                form.addChild(formitem);
                
                
                my_Accordion.addChild(form);
                
                addNewChildIndex++;
            }
das funktioniert prima. jetzt möchte ich den Inhalt der TextInputs in ein Array packen. Ich habe folgendes versucht:

Code:
/* CREATE NEW ARRAY */
            private var newArray:Array = new Array();
            
            private function createNewArray():void
            {
            	
            	for(var i:Number = 0; i < addNewChildIndex; i++ ){
            		
            		newArray[i] = new Array();
            		
            		for(var a:Number = 0; a < addNewChildIndex; a++ ){
            			
            			newArray[i][a] = head[i].text;
            			
            		}
            	}
            	Alert.show(newArray.toString());
            	
            }
Fehler:

Code:
1120: Zugriff auf eine nicht definierte Eigenschaft head.
Wie kann ich nun auf die dynamisch erzeugten Textfelder zugreifen?

Am Ende möchte ich alle Textfelder (Es werden noch mehr per Form) in einem Mehrdimensionalem Array haben und über AMFPHP an PHP senden.

so in dieser Form:

Code:
Array
(
    [0] => Array
        (
            [0] => Textfeld1 in Form 1
            [1] => Textfeld2 in Form 1
            [2] => Textfeld3 in Form 1
            [3] => Textfeld4 in Form 1
            [4] => Textfeld5 in Form 1
        )

    [1] => Array
        (
            [0] => Textfeld1 in Form 2
            [1] => Textfeld2 in Form 2
            [2] => Textfeld3 in Form 2
            [3] => Textfeld4 in Form 2
            [4] => Textfeld5 in Form 2
        )

    [2] => Array
        (
            [0] => Textfeld1 in Form 3
            [1] => Textfeld2 in Form 3
            [2] => Textfeld3 in Form 3
            [3] => Textfeld4 in Form 3
            [4] => Textfeld5 in Form 3
        )

    [3] => Array
        (
            [0] => Textfeld1 in Form 4
            [1] => Textfeld2 in Form 4
            [2] => Textfeld3 in Form 4
            [3] => Textfeld4 in Form 4
            [4] => Textfeld5 in Form 4
        )

)

Wie kann ich das am besten machen?

Vielen Dank & Gruß,
phase
__________________
--
Don't eat yellow snow

Geändert von phase (10-01-2009 um 20:59 Uhr)
phase ist offline   Mit Zitat antworten
Alt 11-01-2009, 19:01   #2 (permalink)
n00b
 
Registriert seit: Jun 2005
Beiträge: 271
ok, getChildAt() ist mein Freund.

Code:
for(var i:int = 0; i < addNewChild; i++ ){
            		
            		newArray[i] 		= new Array();
            	  	var tmpForm:Object 		= my_Accordion.getChildAt(i);
             		
            		for(var a:int = 0; a < 2; a++ ){
            		
            			newArray[i][a] = tmpForm.getChildAt(a).text;
            			
            		}
 
            	}
vielen Dank für die Aufmerksamkeit.
__________________
--
Don't eat yellow snow

Geändert von phase (11-01-2009 um 19:03 Uhr)
phase ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele