Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 08-11-2003, 17:55   #1 (permalink)
TheHarrySolution
 
Benutzerbild von harry-m
 
Registriert seit: Aug 2002
Ort: Cottbus/Berlin
Beiträge: 82
austauschen von zusammengestzten Variablen

Hallo,

hab da nen gedanklichen aufhänger, hoffe jemand kann helfen!?

ich hab auf meiner bühne 8 dynamische Textfelder. Der Inhalt dieser Textfelder sind die Variablen x1, ...,x8.

Zu jedem Textfeld gehört ein button b1, ..,b8. Die buttons befinden sich ebenfalls alle auf der Bühne.

Ich möchte jetzt zwei buttons anklicken können so das diese markiert sind (hab ich soweit).
Doch dann soll ein weiterer button existieren, der Change heist. Dieser soll, angenommen ich habe b1 und b2 gedrückt. mir die Werte der Variablen x1 und x2 vertauschen. Dies habe ich versucht über eine function change zu lösen, die ich dann auf den change button gelegt habe..., funzt aber net!

So fülle ich die Textfelder x1 bis x8:

ActionScript:
  1. for (var i=1; i<9; i++){
  2.     this["x"+i]=random(100);
  3. }{

Der button b1 ist folgendermaßen belegt (alle anderen explizit):
ActionScript:
  1. on(release){
  2.         if(w1==0){   
  3.          farbe = new Color (_root.b1)
  4.          farbe.setRGB(0x00ff00);
  5.          w1=1;
  6.          e=1;
  7.         } else {
  8.                 if(w2==0){
  9.                  farbe = new Color (_root.b1)
  10.                  farbe.setRGB(0xff0000);
  11.                  w2=1
  12.                 }
  13.           }
  14. }

beim button b2 steht statt e die Variable f. Diese wollte ich dann benutzen um die function change zu bestücken. Hier liegt das eigentliche Problem. Ich habe keine passende Idee wie diese ausehen muß. Ich zeig nur mal wie ich es mir gedacht habe..., funzt aber nicht:
ActionScript:
  1. function change(e,f){
  2. var g; 
  3.     this["x"+e]=g;
  4.     this["x"+f]=new["x"+e];
  5.     g=new["x"+f];
  6.     return["x"+e],["x"+f];
  7. }

ich weiß das die syntax zum lachen ist, will nur verdeutlichen was ich meine..., ausserdem darf man als Anfänger auch peinlichkeiten über sich ergehen lassen!

MfG

theharry
harry-m ist offline   Mit Zitat antworten
Alt 08-11-2003, 18:33   #2 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Ort: Stuttgart
Beiträge: 155
RE:Hilfe

Bin ja neu hier. Es ist immer schwierig zu helfen, wenn man nicht genau weiss, was der Fragende eigentlich genau machen will.

Also ich hoffe, ich habe Dich richtig verstanden.

Ich vermute mal in e und f sind die Nummern der angeklickten Buttons enthalten....

Wenn du auf dem Change Button folgendes legst:
ActionScript:
  1. on (release) {
  2.     change(e, f);
  3. }
Und ins erste Frame
ActionScript:
  1. function change(first, second) {
  2.     // Variable speichern, da diese gleich überschrieben wird
  3.     buffer = _root["x"+second];
  4.     //1. Zuweisung
  5.     _root["x"+second] = _root["x"+first];
  6.     // 2. Zuweisung
  7.     _root["x"+first] = buffer;
  8. }

Dann werden die beiden Werte ausgetauscht.

Habe ich Dich damit richtig verstanden?

Geändert von nanodesigner (08-11-2003 um 18:35 Uhr)
nanodesigner ist offline   Mit Zitat antworten
Alt 08-11-2003, 19:48   #3 (permalink)
TheHarrySolution
 
Benutzerbild von harry-m
 
Registriert seit: Aug 2002
Ort: Cottbus/Berlin
Beiträge: 82
Ja du hast mich genau richtig verstanden!

Sieht gut aus was du da geschrieben hast. Ich hab halt immer so anfängerprobleme was die korrekte syntax angeht.
Vielen Dank nochmal

MfG

Harry
__________________
machs lieber heute..., wer weiß was morgen kommt...
harry-m ist offline   Mit Zitat antworten
Alt 08-11-2003, 20:00   #4 (permalink)
TheHarrySolution
 
Benutzerbild von harry-m
 
Registriert seit: Aug 2002
Ort: Cottbus/Berlin
Beiträge: 82
@nanodesigner ... ähhmm...,

leider funzt das nicht so wie wir beide uns das vorgestellt hatten!

das element x1 verschwindet und x2 bleibt unverändert???

keine ahnung wieso..(nicht verzagen nano fragen... hihi).

das nächste mal freue ich mich erst wenn ich den code ausprobiert habe!

hier die fla damits glaubhaft ist!
Angehängte Dateien
Dateityp: zip test2.zip (4,1 KB, 1x aufgerufen)
__________________
machs lieber heute..., wer weiß was morgen kommt...
harry-m ist offline   Mit Zitat antworten
Alt 08-11-2003, 20:13   #5 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Ort: Stuttgart
Beiträge: 155
Re: Hilfe

Der Code funktioniert schon.

Ein trace zeigte, dass die Variable für die 2. Auswahl nicht bestimmt wird.
Du hattest eine kleine Zeile in deinen Auswählbuttons vergessen.
Ich habe diese hinzugefügt und für Dich markiert.
Nun funktionierts.


->Allgemein
->Ablaufverfolgungen helfen bei der Suche nach Bugs.
->Ein trace ist das einfachste was man schnell selbst machen kann.
Angehängte Dateien
Dateityp: zip test220031108211347.zip (3,6 KB, 3x aufgerufen)

Geändert von nanodesigner (08-11-2003 um 20:21 Uhr)
nanodesigner ist offline   Mit Zitat antworten
Alt 09-11-2003, 11:25   #6 (permalink)
TheHarrySolution
 
Benutzerbild von harry-m
 
Registriert seit: Aug 2002
Ort: Cottbus/Berlin
Beiträge: 82
merci..

@nanodesigner thx very much...

das mit dem trace werd ich mir für die zukunft merken das nächste mal nicht gleich rumheulen von wegen hilfe hilfe das funktioniert nicht.

tut mir leid aber so blöde Fehler/Schussligkeiten passieren mir grundsätzlich. ich hoff das ändert sich irgend wann...

nochmal thx

theharry
__________________
machs lieber heute..., wer weiß was morgen kommt...
harry-m 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 16:19 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele