Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-07-2004, 11:45   #1 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 106
Question Array übertragen

wie übertrage ich ein Array bei einem Funktionsaufruf,
wobei sich die Funktion einmal in der selben Klasse befindet und das andere mal in einer anderen Klasse ?
PackElend ist offline   Mit Zitat antworten
Alt 27-07-2004, 12:02   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Da solltest du mal entsprechende Beispiele rüberschieben...
  Mit Zitat antworten
Alt 27-07-2004, 12:10   #3 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 106
Die Klasse die das Array bekommt und weiter verrbeitet(relvanter Auszug):

ActionScript:
  1. class solarsmart extends MovieClip
  2. {   var d,e,Ebene, xm, xg, ym, yg  = new  Number ();
  3.     var TFWert = new  Object ();
  4.     var Namen_Array :Array = ["NeuerWert","Loeschen", "Wertebereich", "Beenden"];
  5.     var Text_Array : Array = ["Neuen Wert hinzufügen", "Wert löschen", "Wertebereich ändern","Beenden"];
  6.     var ButtonArray : Array = ["Ende", "Ueber","Auf","Ab"]
  7.     var ButtonTextArray : Array = ["Beenden","Übernehmen","Auf","Ab" ]
  8.     var WerteArray : Array = ["Xmin", -90, "Ymin", 0, "Xmax", 45, "Ymax", 1000];
  9.     var TitelArray : Array = ["Ort", "Winkel", "Leistung"]
  10.     var DatSatzArrayO, DatSatzArrayS : Array = [];  //Array mit Werten aus DatenBank, sotiert
  11.  
  12. function Werte()
  13.     {   var i,x,y : Number;
  14.         Ebene = 0;
  15.         e = 0;
  16.         var abgleich1  =  new abgleich();
  17.         //trace("SFWSEF");
  18.         DatSatzArrayO = abgleich1.abruf();//-----Array mit Werten aus DatenBank im Orginal
  19.         trace(DatSatzArrayO[0].id);
  20.         for(i in DatSatzArrayO)
  21.         {   //vergeleich(i)
  22.             if(!vergleich(i,1))  //------------------DatsatzArray0[i] not  in  DatSatzArrayS[])
  23.             {   DatSatzArrayS[e] = DatSatzArrayO[i].Neigung;
  24.                 e++;
  25.             }   //---------------------------------------if(not in Dat...O[]
  26.         }   //---------------------------------------for( i in DatSatzArray0)-End
  27.         //e =0; // DatSatzArray.lenth;
  28.         for( i in DatSatzArrayO)
  29.         {   if(vergleich(i,2)) //-----------------DatSatzArray0[i] in  DatSatzArrayS[]
  30.             {   if(DatSatzArrayS[i].length == 0) { e = 0;} //Überprüfen ob in der 2. Dimesion schon ein Wert vorhaden ist
  31.                 DatSatzArrayS[i][e] = DatSatzArrayO[i].Azimut;
  32.                 e++;
  33.             }   //---------------------------------------if(not in Dat...O[]
  34.         }   //---------------------------------------for( i in DatSatzArray0)-End
  35.         e = 0;
  36.         var werte1 = new werte();
  37.         werte1.wertearray(DatSatzArrayS);
  38.         for(i in DatSatzArrayS)
  39.         {   y = NeigungInY(DatSatzArrayS[i]);
  40.             x = AzimutInX(DatSatzArrayS[i][1])
  41.             _root.attachMovie("Fenster", "Wert"+i,e,x,y,100,100);
  42.             e++;
  43.         }   //---------------------------------------for( i in DatSatzArrayS)-End
  44.                
  45.        
  46.     }   //--------------------------------function Werte-End
  47.    
  48.     function vergleich(n, Dimension : Number)
  49.     {   var i : Number;
  50.         if( Dimension == 1)
  51.         {   for( i in DatSatzArrayS)
  52.             {   if (DatSatzArrayO[n].Neigung == DatSatzArrayS[i]){return true;}else{return false;}
  53.             }
  54.         }
  55.         if( Dimension == 2)
  56.         {   for( i in DatSatzArrayS[n])
  57.             {   if (DatSatzArrayO[n].Azimut == DatSatzArrayS[n][i]){return true;}else{return false;}
  58.             }
  59.         }      
  60.     }   //---------------------function vergleich-End
  61.  
  62.     function NeigungInY( neig : Number)
  63.     {   var y : Number;
  64.  
  65.         return y;
  66.        
  67.     }
  68.  
  69.     function AzimutInX( azi : Number)
  70.     {   var x: Number;
  71.  
  72.         return x;
  73.  
  74.  
  75. }

Die Klasse die aufgerufen wird und ein Array mittels return zurückgeben soll:
ActionScript:
  1. class abgleich extends MovieClip
  2. {   
  3.     function onPress()
  4.     {   abruf();
  5.     }
  6.    
  7.     function abruf()
  8.     {   var VarSend = new LoadVars();
  9.         var VarLoad = new LoadVars();
  10.         var a : Number;
  11.         var id, Azimut, Neigung, Ort, Name, PLZ, J2000, J2001, J2002, J2003, J2004, J2005;
  12.         var DatSatzArrayO : Array = [];  //Array mit Werten aus DatenBank im Orginal
  13.    
  14.         VarSend.ort = "Orttest";
  15.         VarSend.neig = "Neigungtest";
  16.         VarSend.azi = "Azimutest";
  17.         VarSend.plz = "PLZtest";
  18.         VarSend.name= "Nametest";
  19.         VarSend.trans = "send";
  20.         //VarSend.send('http://localhost/solar/PHP.php', VarLoad, "POST");
  21.         VarSend.trans = "notsend";
  22.  
  23.         VarLoad.trans = "load";
  24.         VarLoad.sendAndLoad('http://localhost/solarsmart/PHP.php', VarLoad, "POST");
  25.        
  26.         //trace("test");
  27.        
  28.         VarLoad.onLoad = function (success)
  29.         {   if (success)
  30.             {   id = this.id.split(",");
  31.                 Azimut = this.Azimut.split(",");
  32.                 Neigung = this.Neigung.split(",");
  33.                 Ort = this.Ort.split(",");
  34.                 Name = this.Name.split(",");
  35.                 PLZ = this.PLZ.split(",");
  36.                 J2000 = this.J2000.split(",");
  37.                 J2001 = this.J2001.split(",");
  38.                 J2002 = this.J2002.split(",");
  39.                 J2003 = this.J2003.split(",");
  40.                 J2004 = this.J2004.split(",");
  41.                 J2005 = this.J2005.split(",");
  42.                 
  43.                 //a =  10; //Anzahl der Datensätze
  44.                 //for(a in id)
  45.                 for(a=0; a<id.length; a++)
  46.                 {   var DatSatzArrayO = new Object();
  47.                            //trace(a);
  48.                            //trace(Ort[a]);
  49.                            DatSatzArrayO.id = id[a];
  50.                            DatSatzArrayO.Azimut = Azimut[a];
  51.                            DatSatzArrayO.Neigung = Neigung[a];
  52.                            DatSatzArrayO.Ort = Ort[a];
  53.                         DatSatzArrayO.Name = Name[a];
  54.                         DatSatzArrayO.PLZ = PLZ[a];
  55.                            DatSatzArrayO.J2000 = J2000[a];
  56.                            DatSatzArrayO.J2001 = J2001[a];
  57.                         DatSatzArrayO.J2002 = J2002[a];
  58.                            DatSatzArrayO.J2003 = J2003[a];
  59.                            DatSatzArrayO.J2004 = J2004[a];
  60.                            DatSatzArrayO.J2005 = J2005[a];
  61.                            DatSatzArrayO[a] = DatSatzArrayO;
  62.                            //trace(DatSatzArrayO[a].Ort+a);
  63.                 }   //--------------------------for(a in Azimut)-End
  64.                 /*for( var prop in this )
  65.                 {   trace (" key " + prop + " = " + this[prop]);
  66.                 }*/
  67.                 VarSend.trans = "notload";
  68.                
  69.                 return DatSatzArrayO;
  70.             } else
  71.             {   trace (" Error loading variables ");
  72.             }   //-----------------------------------------------------------if(success)_construct-End
  73.         }   //--------------------------------------------------------------function onLoad-End
  74.     }   //--------------------------------------------------------------function onPress-End
  75. }   //--------------------------------------------------------------class FlashPHP-End
  76.  


Ich habe auch schon versucht, beide Klassen in eine zu schreiben, wird halt unübersichtlich und wie die übergabe dann zwischen den Funktionen funktioniert wiß ich auch nicht.
PackElend ist offline   Mit Zitat antworten
Alt 10-09-2004, 03:22   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 18
hi probiers mal mit interfaces.
so kannst du sehr angenem ueber mehrere klasse ein interface stuelpen und diese dann so ansprechen.

reco
ttyco ist offline   Mit Zitat antworten
Alt 10-09-2004, 06:58   #5 (permalink)
Neuer User
 
Benutzerbild von K-Grabowski
 
Registriert seit: Jan 2003
Ort: Arminia!!!! Bielefeld
Beiträge: 1.138
zeig mal wo genau in welcher Zeile dein Fehler ist und schreib an diese Stelle dein Problem hin.

Und wozu extendest du den MovieClip, die Klassen haben doch nix mit nem MovieClip zu tun?
__________________
Wieviel hätte ich also für dieses Fahrzeug zu investieren???
K-Grabowski 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 12:18 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele