Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 31-08-2006, 19:59   #1 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 230
addition von textfeldern

habe folgendes problem
wenn im textfeld checkoff die 20 steht, sollen bestimmte zahlen zu einem anderen textfeld namens "gebot" addiert werden, falls bestimmte textfelder (t1 bis t4) sichtbar sind.
hab das jetzt mal so versucht zu lösen, was mir aber keinen erfolg brahcte, ausser einen syntaxfehler..
ich hoffe, ihr könnt mir helfen
Code:
if (_root.checkoff == "20") {
	if(_root.t1._visible = true) {
		add _root.gebot = 0.01
	}
	if(_root.t2._visible = true) {
		add _root.gebot = 0.2
	}
	if(_root.t3._visible = true) {
		add _root.gebot = 0.5
	}
	if(_root.t4._visible = true) {
		add _root.gebot = 1
	}
}

Geändert von Real2k (31-08-2006 um 20:03 Uhr)
Real2k ist offline   Mit Zitat antworten
Alt 31-08-2006, 20:14   #2 (permalink)
Der Wunderhund
 
Benutzerbild von gaspode
 
Registriert seit: Jun 2002
Ort: Hattingen
Beiträge: 10.515
Meist Du 20 als Zahl? Dann ohne Anführungsstriche.

PHP-Code:
if (_root.checkoff == 20) {
    if(
_root.t1._visible == true) { _root.gebot += 0.01 }
    if(
_root.t2._visible == true) { _root.gebot += 0.2 }
    if(
_root.t3._visible == true) { _root.gebot += 0.5 }
    if(
_root.t4._visible == true) { _root.gebot += }

Oder kürzer:
PHP-Code:
gebotAdd = new Array(0.010.20.51);

if (
_root.checkoff == 20) {
    for (var 
i=0i<4i++) {
        if(
_root["t"+(i+1)]._visible) { _root.gebot += gebotAdd[i] }
    }

gruß, gaspode
gaspode ist offline   Mit Zitat antworten
Alt 31-08-2006, 20:22   #3 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 230
ich hab nu die zweite version genommen.. nur funzt das nich so..
die dyn.textfelder haben instanznamen.. brauchen die auch variablennamen?`

wenn ich dem textfeld "gebot" den variablennamen "gebot" gebe, dannn steht sofort "_level0.gebot" drin...

(im gesamten sinds nicht nur 4 felder sondern 26)
edit: hab variablennamen zugefügt usw..
hier mal der code

Code:
_root.gebot = 0
_root.t1 = 0.01
_root.t2 = 0.20
_root.t3 = 0.50
_root.t4 = 1
.. ... .. ...
geht bis _root.26

gebotAdd = new Array( >>hier sind 26 lange zahlen drin<< );

if (_root.checkoff == 20) {
    for (var i=0; i<26; i++) {
        if(_root["t"+(i+1)]._visible) { _root.gebot += gebotAdd[i] }
    }
}
fehler gibts keine aber gehen tuts auch nicht... _root.gebot bleibt auf 0, auch wenn bestimmte "t"'s sichtbar sind und checkoff auf 20 steht

Geändert von Real2k (31-08-2006 um 20:33 Uhr)
Real2k ist offline   Mit Zitat antworten
Alt 31-08-2006, 20:33   #4 (permalink)
Der Wunderhund
 
Benutzerbild von gaspode
 
Registriert seit: Jun 2002
Ort: Hattingen
Beiträge: 10.515
Oh, sorry. Irgendwie habe ich überlesen,
daß es um Textfelder geht. Den numerischen
Wert eines Textfeldes kannst Du so auslesen.

Number(deinTextfeld.text);

Aber vielleicht solltest Du eine Variable benut-
zen und erst am Ende des Wert auf das Textfeld
schreiben.
PHP-Code:
gebotAdd = new Array( >>hier sind 26 lange zahlen drin<< );

if (
_root.checkoff.text == "20") {
    var 
gebotSum Number(_root.gebot.text);
    for (var 
i=0i<26i++) {
        if(
_root["t"+(i+1)]._visible) { gebotSum += gebotAdd[i] }
    }
    
_root.gebot.text gebotSum;

gruß, gaspode
gaspode ist offline   Mit Zitat antworten
Alt 31-08-2006, 20:40   #5 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 230
geht auch so net.. also ich hab den ganzen t-feldern den instanznamen t1 bis t26 gegeben und auch den variablennamen t1 bis t26
beim gebot-feld auch instanzname sowie variablennamen "gebot"

und füllen tu ich sie per script am anfang

_root.gebot = 0
_root.t1 = 0.01
_root.t2 = 0.20
_root.t3 = 0.50
_root.t4 = 1
..
..
.. usw
Real2k ist offline   Mit Zitat antworten
Alt 31-08-2006, 20:45   #6 (permalink)
Der Wunderhund
 
Benutzerbild von gaspode
 
Registriert seit: Jun 2002
Ort: Hattingen
Beiträge: 10.515
>instanznamen t1 bis t26 gegeben und
>auch den variablennamen t1 bis t26

ist glaube ich nicht so gut, wenn die instanz-
namen und die variablennamen gleich heißen.

gruß, gaspode
gaspode ist offline   Mit Zitat antworten
Alt 31-08-2006, 21:14   #7 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 230
okay
ich bin leider immernoch nicht weiter
hab das jetzt so gemacht:

instanznamen t1 bis t26 und gebot
variablennamen vt1 bis vt26 und vgebot

checkoff ist ein dynamisches textfeld das ständig um -1 an wert verliert und hat keinen variablennamen

zum füllen der felder
Code:
_root.vgebot = 0
_root.vt1 = 0.01
_root.vt2 = 0.20
_root.vt3 = 0.50
_root.vt4 = 1
..
..
..
als abfrage

Code:
gebotAdd = new Array(0.01, 0.20, 0.50, 1, 5, . .. . .. . . . . . . .); 

if (_root.checkoff.text == "20") { 
    var gebotSum = Number(_root.gebot.text); 
    for (var i=0; i<26; i++) { 
        if(_root["vt"+(i+1)]._visible) { gebotSum += gebotAdd[i] } 
    } 
    _root.gebot.text = gebotSum; 
}
das ganze funktioniert halt leider nicht

Geändert von Real2k (31-08-2006 um 21:16 Uhr)
Real2k ist offline   Mit Zitat antworten
Alt 31-08-2006, 21:37   #8 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 230
damit ihr mir besser helfen klönnt hab ich jetzt mal die FLA mit dem allernötigsten code usw angehängt...
sobald praktisch unten die "20" steht müsste oben im feld "gebot" die 100 stehen, genauso wie nach dem ersten klick im feld "checksum"

ok, die datei is komischerweisse gezippt immernoch 114kb groß und ungezippt 272kb.. warum auch immer ..

hab sie hier hochgeladen
http://www.real2k.de/7flashforum.fla
Real2k ist offline   Mit Zitat antworten
Alt 01-09-2006, 14:05   #9 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 230
hallo?
Real2k ist offline   Mit Zitat antworten
Alt 01-09-2006, 14:13   #10 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Zitat:
Zitat von Real2k
hallo?
Ja bitte?



Ich kapiere nicht für 2 Cent, was da passieren soll. Allerdings solltest du deine if-Abfrage mit in das onPress() des Buttons legen:
PHP-Code:
_root.kbt1.onPress = function() {
    
_root.checksum.text _root.k1.text;
    
_root.checkoff.text--;
    if (
_root.checksum.text == "100") {
        
_root.t9._visible false;
    }
    if (
_root.checkoff.text == "20") {
        var 
gebotSum Number(_root.gebot.text);
        for (var 
0i<26i++) {
            if (
_root["t"+(i+1)]._visible) {
                
gebotSum += gebotAdd[i];
            }
        }
        
_root.gebot.text gebotSum;
    }
}; 
edit: ...und Variablen haben die Eigenschaft _visible nicht wirklich.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++

Geändert von Der Frager (01-09-2006 um 14:14 Uhr)
Der Frager ist offline   Mit Zitat antworten
Alt 01-09-2006, 14:46   #11 (permalink)
Der Wunderhund
 
Benutzerbild von gaspode
 
Registriert seit: Jun 2002
Ort: Hattingen
Beiträge: 10.515
@derFrager:

>Ich kapiere nicht für 2 Cent, was da passieren soll.
Ich bin auch noch am rätseln.
Aber auch die fla hat mich nicht viel weitergebracht.

Allerdings habe ich ja einige Teile des Codes selbst verbockt.

gruß, gaspode
gaspode ist offline   Mit Zitat antworten
Alt 02-09-2006, 11:46   #12 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 230
also im grunde genommen geht es nur um diesen ausschnitt, alles andere ver fla funktioniert ja

PHP-Code:
if (_root.checkoff.text == "20") { 
    var 
gebotSum Number(_root.gebot.text); 
    for (var 
i=0i<26i++) { 
        if(
_root["vt"+(i+1)]._visible) { gebotSum += gebotAdd[i] } 
    } 
    
_root.gebot.text gebotSum

das ganz soll nicht bei einem buttonklick oder ähnlichem passieren..
das ganze ist nur ein ausschnitt von meinem kompletten code..

also, "checkoff.text" fängt bei 26 an, und bei jedem buttonklick auf "kbt1" bis "kbt26" gehts um 1 runter.
PHP-Code:
_root.kbt1.onPress = function() {
    
_root.checksum.text _root.k1.text;
    
_root.checkoff.text --;
}; 
dieses code-stück gibts praktisch 26 mal leicht abgeändert. ich weiss es würde kürzer gehn, bin halt noch ein noob
wenn "checkoff.text" bei 20 angelangt ist, sollen praktisch alle felder "vt1" bis "vt26" zusammenaddiert werden und in das feld "gebot.text" eingetragen werden. da heisst, nicht alle, sondern nur diejenigen, die "_visible = true;" sind. weil 5 stück der felder kbt1 bis kbt26 sind ja nicht mehr sichtbar. welche 5 das sind das hängt ganz vom user ab.

versteht ihr was ich meine?
Real2k 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 06:06 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele