Verknüpfung von Variablen und Strings klappt im dyn Textfeld nicht

DJTrancelight

Erfahrenes Mitglied
Hi Leute,

ich habe hier ein kleines Problem, bei dem ich nicht mehr weiter weiß. Googel und Programmhilfe hat mir leider auch nicht geholfen.

Ich möchte gerne einen Laufband erstellen, das sich aus verschiedenen variablen und zusammensetzt.

Hier die Erklärung

1. Auf der Bühne befindet sich ein dyn.Textfeld - var = tf_tracknummer;
2. Im ersten Schlüsselbild gibt es die globalen Variablen und auch dem dyn. Textfeld
wird ein Wert zu Beginn zugewiesen

PHP:
_global.interpret = "Interpretenname";
_global.tracktitel1 = "intro";
_global.tracktitel2 = "track01";
tf_tracknummer = 1;

3. ein zweites dyn. Textfeld befindet sich im MC mc_laufband, der sich auf _root befindet.

So und jetzt hätte ich gerne, wenn sich die tf_tracknummer ändert, dass sich dann auch die Anzeige des Laufbands ändert. Ich habe es so versucht:
Das Script liegt auf einem Button
PHP:
on (release){
    _root.mc_laufband.tf_laufband = interpret + " - " + tracktitel+tf_tracknummer;
}

Leider spuckt das Laufband diese Lösung aus:

Interpretenname - 1

Wenn ich jedoch die zahl direkt zum Tracktitel dazuschreibe, dann funktioniert es.
Also so:

PHP:
on (release){
    _root.mc_laufband.tf_laufband = interpret + " - " + tracktitel1;
}

Ausgabe: Interpretenname - intro

Ich komm gerade echt nicht auf die Lösung. Vielleicht sitze ich auch schon wieder zu lange vor dem PC:)

Habs auch schon mit

PHP:
on (release){
    _root.mc_laufband.tf_laufband = interpret + " - " + tracktitel+String(tf_tracknummer);
}

probiert, jedoch ohne Erfolg.

Wäre für eure Hilfe sehr dankbar.

Beste Grüße
DJ Trancelight
 
Hallo,

erlaub mir eine Frage: Was bringt dir das Speichern dieser Variablen im _global-Objekt für einen Vorteil? Und wenn du die dann schon dorthin speicherst, dann möchten die Variablen auch entsprechend referenziert werden:

Code:
var str = _global.interpret + " - " + eval ("_global.tracktitel"+tf_tracknummer); 
_root.mc_laufband.tf_laufband = str;

Wenn du die Variable _global.tracktitel1 ansprechen willst, indem du zwei Ausdrücke zusammensetzt, dann kannst du nicht einfach die Hälfte des Variablen-Namens (schon gar nicht ohne Anführungszeichen ;)) nehmen und mit einem Verweis auf die Track-Nummer kombinieren, ohne auch nur einen Hinweis darauf, dass es sich um einen zusammengesetzten Ausdruck handelt. Sonst wird nämlich einfach ein String konstruiert.

gruss
 
Zuletzt bearbeitet:
hi Luke,

du bist der Beste!
1000 Dank.

So meine Kopfschmerzen sind jetzt wieder weg und ich wage mich an Flash wieder ran:)

Zu deinen Fragen:

erlaub mir eine Frage: Was bringt dir das Speichern dieser Variablen im _global-Objekt für einen Vorteil?

Nun, ich denke, dass ich diese Variablen von überall im Film noch ansprechen muss, also aus höheren Ebenen als _root.
Ausserdem möchte ich so auch die mp3-Datei später laden.

Wenn du die Variable _global.tracktitel1 ansprechen willst, indem du zwei Ausdrücke zusammensetzt, dann kannst du nicht einfach die Hälfte des Variablen-Namens (schon gar nicht ohne Anführungszeichn ) nehmen und mit einem Verweis auf die Track-Nummer kombinieren, ohne auch nur einen Hinweis darauf, dass es sich um einen zusammengesetzten Ausdruck handelt. Sonst wird nämlich einfach ein String konstruiert.

Au Backe! Ich seh es jetzt auch gerade. Ich weiß echt nicht wie ich auf so einen Blödsinn komme.
Danke Luke!
 
Zurück