Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 30-04-2008, 20:01   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 3
Problem mit for-schleife

Tach zusammen.

Entweder das was ich versuche kann nicht funktionieren, oder aber ich habe gerade den Megahänger. Hab auch schon sämtliche Suchfunktionen benutzt und eigentlich das richtige gefunden. Hilft mir leider trotzdem nicht :-)

Hier erstmal mein Code:
PHP-Code:
var laenge1 _root.reihe1.length;
for (
j=0j<laenge1j++) {
    
this.attachMovie("btn""btn"+jthis.getNextHighestDepth());
    var 
button this["btn"+j];
    
this["btn"+j].idx j;
    
button._x 8;
    
button._y 9;
    
button.onRollOver = function() {
        var 
fag this.idx;
        
_root.mc.txt.htmlText "Hallo";
        
trace(fag);
    };

reihe1.length ist gleich 3
Das Problem: Egal über welchen Button ich einen Mouseover mache, es wird mir immer nur die 3 ausgegeben. Die for-Schleife läuft halt bis zum Ende durch. Dachte eigentlich dass ich das mit dem vergeben einer Hilfsvariablen umgehen kann. Klappt aber leider nicht.
Mein Ziel ist natürlich die "2" ausgegeben zu bekommen, wenn ich mit der Maus über Button 2 gehe. Klingt so einfach ...

Hoffe ihr könnt mir helfen den morgigen Feiertag zu retten.

Danke und schönen Gruß!!
alaaf ist offline   Mit Zitat antworten
Alt 30-04-2008, 21:18   #2 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.324
muss gehen
Code:
for (j=0; j<laenge1; j++) {
	var button = this.attachMovie("btn", "btn"+j, this.getNextHighestDepth());
	button._x = 8+50*j; // du legst alle buttons hüpsch aufeinander?
	button._y = 9;
	button.idx = j;
	button.onRollOver = function() {
		var fag = this.idx;
		trace(fag);
	};
}
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 01-05-2008, 12:55   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 3
Oh Mann, wie dämlich man sein kann. Danke schön!

Hab aber ein neues Problem:
PHP-Code:
var laenge1 _root.reihe1.length;
for (
i=0i<laenge1i++) {
    
this.attachMovie("box""box_eins"+ithis.getNextHighestDepth());
    var 
mc this["box_eins"+i];
    
this["box_eins"+i].txt.htmlText _root.reihe1[i][0];
    
mc._x 2;
    
mc._y 15+i*(mc._height+10);
    
mc.bg.gotoAndPlay(_root.reihe1[i][4]);
    
// Einzeiliger Text: 15
    
if (mc.txt.textHeight == 15) {
        
mc.txt._y = +16;
    }
    for (
j=0j<laenge1j++) {
        var 
button this.attachMovie("btn""btn"+jthis.getNextHighestDepth());
        
button._x 8;
        
button._y 10+90*j;
        
button.idx j;
        
button.onRollOver = function() {
            var 
fag this.idx;
            var 
mac = ["box_eins"+fag];
            
mac.txt.htmlText "hallo";
        };
    }

Funktioniert soweit alles wunderbar, nur lässt sich im letzten Schritt (RollOver) das Textfeld nicht mehr ansprechen. Die Variable fag wird ordentlich getraced, an der liegts also nicht. Instanznamen sind selbstverständlich alle vernünftig vergeben...

Vielleicht ists ja wieder ähnlich dämlich :-)

Danke & Gruß
alaaf ist offline   Mit Zitat antworten
Alt 01-05-2008, 15:59   #4 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.324
var mac = ["box_eins"+fag];

so eine syntax gibt es nicht. wenn dann z.b. so
var mac = this["box_eins"+fag];

geht natürlich nicht, hier ist this ja der button. also z.b. so
var mac = this._parent["box_eins"+fag];

aber warum nicht gleich so
button.txt = this["box_eins"+j].txt;
button.onRollOver = function() {
this.txt.htmlText = "hallo";
};
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 01-05-2008, 16:28   #5 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 3
Ja leck mich am Arsch. Mein Gehirn scheint echt aufgeweicht zu sein ...

Danke!!
alaaf 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 04:41 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele