Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-04-2004, 04:39   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 7
Angry TextField im MovieClip als Eingabefeld Werte verarbeiten ???

Hallo zusammen,
in einem ScrollMC wird ein MovieClip erzeugt mit mehreren Textfeldern. Dies ist alles kein Problem. ABER: Ein Textfeld ist ein Eingabefeld. Code siehe hier:
ActionScript:
  1. o.createTextField(["anz"],1,w,h,35,20);
  2. o["anz"].type = "input";
  3. o["anz"].selectable = true;
  4. o["anz"].wordWrap = true;
  5. o["anz"].embedFonts=true;
  6. o["anz"].setNewTextFormat(Text2);
  7. o["anz"].maxChars = 4;
  8. o["anz"].restrict = "0-9";
  9. o["anz"].text = men;
  10. o["anz"]._x = w+45;
  11. o["anz"]._y = h;
Mittels
ActionScript:
  1. o["anz"].onChanged = ...
soll geprüft werden, ob das Feld verändert wurde. Wenn ja, muss ich die Werte weiterverarbeiten können. Ich schaffs aber nicht, auf die neuen Werte zuzugreifen. Kann mir jemand helfen

Danke schonmal im voraus.
HEPI
hepi_presstige ist offline   Mit Zitat antworten
Alt 21-04-2004, 05:54   #2 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
#1:
We du dein Textfeld anspricht ist hier nicht die beste Methode: o.anz.... reicht völlig aus. die Eckigen Klammern braucht su nur, wenn zB anz1 ... bis ... anz7 hast, dann so: o["anz" + zBNummerDerSchleife]....

#2:
ich würde einfach einer Variable den Inhalt geben. zB InputVar = o.anz.text;
Soll während des eintippens geprüft werden, ob sich as ändert, oder wenn man zB auf einen Button klickt?
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 21-04-2004, 09:29   #3 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 7
zu #1:
Danke für Deinen Hinweis. Das Textfeld ist Teil einer Aufzählung. Daten kommen aus nem PHP-Script. Vorangestellt ist
ActionScript:
  1. o=createEmptyMovieClip(["Clip"+i],i);
in einer While-Schleife. Somit brauche ich das Textfeld nicht mehr zu "nummerieren", da das MovieClip in jedem Durchgang durchnummeriert wird. Oder?

zu #2:
Es soll geprüft werden, ob ein anderer Wert eingegeben wird. Wenn ja, dann muss ein anderes Textfeld neu berechnet und der eingegebene Wert muss erneut gespeichert werden. Das Ausführen der Funktionenen nach der Änderung ist kein Problem, wenn ich weiss, wie ich auf den neuen Wert zugreifen kann !
hepi_presstige ist offline   Mit Zitat antworten
Alt 21-04-2004, 10:22   #4 (permalink)
Fear & Loathing
 
Benutzerbild von Dr. Gonzo
 
Registriert seit: Oct 2003
Beiträge: 115
???

sag mal bin ich blöd oder was ???

ActionScript:
  1. o.anz.onChanged = function(){
  2.   var input = o.anz.text;
  3. }
^^^muss doch gehen...
oder hab ich irgendwas an deinem problem falsch verstanden ?
Dr. Gonzo ist offline   Mit Zitat antworten
Alt 21-04-2004, 11:08   #5 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 7
@Dr.Gonzo
nein, Blöd bist Du bestimmt nicht, ich habe es nur nicht richtig erklärt. Zum einfacheren Verständnis jetzt nochmals das Script in verkürzter Ausführung:
ActionScript:
  1. while(i<parseInt(this.zaehler)) {
  2.     men=eval("this.men"+i);
  3.     epr=eval("this.epr"+i);
  4.     o=createEmptyMovieClip(["Clip"+i],i);
  5.     //hier soll erst der eingelesene Wert angezeigt werden,
  6.     //welchen man später verändern kann
  7.     o.createTextField(["anz"],1,w,h,35,20);
  8.     o["anz"].type = "input";
  9.     o["anz"].selectable = true;
  10.     o["anz"].wordWrap = true;
  11.     o["anz"].embedFonts=true;
  12.     o["anz"].setNewTextFormat(Text2);
  13.     o["anz"].maxChars = 4;
  14.     o["anz"].restrict = "0-9";
  15.     o["anz"].text = men;
  16.     o["anz"]._x = w+45;
  17.     o["anz"]._y = h;
  18.     //hier wird der eingelesene/veränderte Wert benötigt
  19.     o.createTextField(["prg"], 8,w, h, 70, 20);
  20.     epr=dezimalZahl(epr,2); men=parseInt(men);
  21.     gpr=(epr*men);
  22.     o["prg"].text = dezimalZahl(gpr,2);
  23.     o["prg"].selectable = false;
  24.     o["prg"].wordWrap = true;
  25.     o["prg"].embedFonts=true;
  26.     o["prg"].setTextFormat(Text2);
  27.     o["prg"]._x = w+455;
  28.     o["prg"]._y = h;
  29.     i++;
  30. }
Deine Variante hat mir nur den Wert des letzten Eintrages ausgegeben. Aber wenn es 3 Einträge (zaehler=3) gibt, und ich Eintrag 1 ändere, soll er mir den Wert von 1 zurückgeben und nicht von 3 !!!
Hoffe dies ist ein bisserl verständlicher.
hepi_presstige ist offline   Mit Zitat antworten
Alt 21-04-2004, 11:30   #6 (permalink)
Neuer User
 
Benutzerbild von the binary
 
Registriert seit: Jul 2001
Ort: Berlin | Friedrichshain
Beiträge: 3.561
ich glaube, du musst 'i' als eigenschaft
mit an deinen mc geben, der das textfeld erstellt.
mom is i ja eine '_root' variable und behält nach beendigung der schleife den wert 3.

gruss
__________________
8bm | join ff@BOINC
formpackage.org | audiohunter.de | problematica.de | 8ball-media.de/blog | taikonauten.cn
the binary ist offline   Mit Zitat antworten
Alt 21-04-2004, 15:17   #7 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 7
@binary
Der Gedankengang ist korrekt. Aber mit der Lösung hapert es noch. Komm irgend wie net weiter.

@alle
Bin ich der Einzige, der so nen "shit" baut ?
Muss doch eine Lösung geben mein Problem auch aus einer While-Schleife heraus zu lösen.
Gonzos Lösungsbeispiel funzt, aber nicht in einer While-Schleife.
hepi_presstige ist offline   Mit Zitat antworten
Alt 22-04-2004, 10:01   #8 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 7
Habs gelöst. Das nächste "Problem" steht zwar schon vor der Tür, werde aber erst Posten, wenn ich wieder kurz vorm Suizid stehe.
Nochmals danke für Eure Tips und Hilfen.
hepi_presstige 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:27 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele