Variablenwert bleibt nicht erhalten

poli-dori

Erfahrenes Mitglied
Hi,

ich stehe vor einem problem mit flash. die frage klingt bescheuert denn es müsste doch einfach sein, aber ich komme einfach nicht dahinter.
ich uploade die .fla datei.
es handelt sich darum, dass ich in der hauptzeitleiste 5 variablen festlege für textfelder, die wiederum in movieclips (5 instanzen eines selben) eingebettet sind. es handelt sich bei den movies um buttons mit einem rollover effekt. bevor der rollover ausgelöst wird, stehen auf den buttons genau die werte die ich in der hauptzeitleiste festgelegt habe, aber sobald die buttonanimation startet, verschwindet der variablentext, und es erscheint wieder der platzhaltertext, den ich den dynamischen textfeldern verpasst habe...
ich habe allerhand probiert und komme nicht dahinter. es nervt mich denn es sollte doch recht einfach zu lösen sein!

Dieser Code steht in der Hhauptzeitleiste:

m_menu_1.buttontext.b_text = "HOME";
m_menu_2.buttontext.b_text = "PORTFOLIO";
m_menu_3.buttontext.b_text = "CLIENTS";
m_menu_4.buttontext.b_text = "X EXTRUDE";
m_menu_5.buttontext.b_text = "CONTACT";
m_menu_6.buttontext.b_text = "LOGIN";


Bitte um hilfe!

Danke
 

Anhänge

  • forum.fla.zip
    4,7 KB · Aufrufe: 11
Re: Variablenwert bleibt nicht erhalten Hiiilllfffeeee!!

Sorry,
habe das Zeugs mir der Netuiquette erst zu spät bemerkt! Kommt nicht wieder vor!

Zurück zu mein Problem.
Ich verpacke ein dynamisches Textfeld (mit einer Variable) in einem MC. Diesen animiere ich dann irgendwie und verpacke das Ganze wieder in einen MC. In der Hauptzeitleiste teile ich der Variable im Textfeld einen bestimmten Wert (z.B. "HALLO") zu.
Wenn ich mir die Animation dann anschaue passiert folgendes:
Das Texfeld zeigt den Variablenwert nur solange an, bis der MC, in dem ich das Textfeld verpackt habe zu einem Schlüsselbild kommt. Ab diesen Zeitpunkt verschwindet der Variablentext und es erscheint wieder der Platzhaltertext, den ich dem Textfeld verpasst hatte!

Kann mir jemand erklären wo das Problem liegt und was ich tun soll, damit das Textfeld immer dern Variablenwert anzeigt?

Danke
 
Re: Variablenwert bleibt nicht erhalten Hiiilllfffeeee!!

Mach das doch mit einer Komponente...

Einen Button machen und dann in eine Komponente umwandeln. Dann kannst du über Parameter deinen Text eintragen und der Button bleibt immer gleich nur der Text wir verändert.
 
Re: Variablenwert bleibt nicht erhalten Hiiilllfffeeee!!

Hi,

das komt davon, dass Dein Textfeld ein neues Schlüsselbild durchläuft. In einem neuen Schlüsselbild werden alle Komponenten initialisiert; es handelt sich eigentlich um ein völlig anderes Objekt.

Ich würde so vorgehen
  • Gib zuerst einfach nur jedem Button die Variable "b_text":
PHP:
m_menu_1.b_text = "HOME";
m_menu_2.b_text = "PORTFOLIO";
m_menu_3.b_text = "CLIENTS";
m_menu_4.b_text = "X EXTRUDE";
m_menu_5.b_text = "CONTACT";
m_menu_6.b_text = "LOGIN";


  • Dann öffne den MC g_buttontext und gib dem Textfeld einen Instanznamen "tf". Es ist meistens sicherer, Texte über Instanznamen zuzuweisen, als über Textfeldvariablen.

  • Erstelle nun in Deinem Button eine neue Ebene für etwas AS und gib im ersten Schlüsselbild folgendes ein:
PHP:
if (b_text == undefined) {
	this.onEnterFrame = function() {
		if (b_text != undefined) {
			buttontext.tf.text = b_text;
			delete this.onEnterFrame;
		}
	}
} else {
	buttontext.tf.text = b_text;
}
Damit wartet der Button, bis er die Variable "b_text" zugewiesen bekommt und schreibt sie dann in das Textfeld.


  • Damit auch ab Frame 11 der Text "erhalten" bleibt, erledigst Du diese Zuweisung dort noch einmal:
PHP:
buttontext.tf.text = b_text;
(Das kannst Du einfach in Deine AS-Ebene unter die Mausereignisse in Frame 11 setzen)

Gruß

P.S.: Ich hab mal das "Hiiiiillllffeeee" entfernt. ;)
.
 
Danke!

Hi,

danke für die superschnelle Antwort. Habs versucht und es klappt prima!
Falss es sonst noch Vorschläge gibt, wie man dieses Problem lösen könnte, sie sind jederzeit willkommen!

poli-dori
 
Code-Beispiel

hi,

bin nicht recht gut im "Code erfinden", könntest du mir ein einfaches Bsp nennen wie ich so einen Rollovereffekt mit AS herstelle. Wenn es geht auch mit "Abbremseffekt"...
:eek:)

Danke
 
Danke!

Hey danke, das icht super hier!

Nur noch ein Problem, ich arbeite hier im Büro auf einem Mac der nur Flash MX (also 6) installiert hat. Könntest du mir die Datei bitte so abspeichern, dass ich sie sicher öffnen kann? Danke nochmals für deine sehr wertvolle Hilfe! :)
 
Obs Dein Mac öffnen kann, weiß ich nicht; jedenfalls hier noch einmal für Flash MX. ;)

Gruß
.
 

Anhänge

  • reflection_mx.zip
    12,5 KB · Aufrufe: 12
Zurück