2012-04-04 8 views
0

Ich habe ein Textfeld in einem MovieClip, das ich versuche, von einer externen Klasse zu ändern. Es scheint auf der Bühne als leer zurück zu erscheinen, aber wenn ich nachspüre, was drin ist, gibt es mir den richtigen Wert, es erscheint einfach nicht.AS3 TextField zeigt überhaupt keinen neuen Text an, obwohl es dort ist

Mein Code ist dies:

((this.parent.parent.getChildByName('bottomBar') as MovieClip).getChildByName('area_txt') as TextField).text = 'test'; 

Also, wenn ich verfolgen „((this.parent.parent.getChildByName('bottomBar') as MovieClip).getChildByName('area_txt') as TextField).text“ es gibt „Test“, aber es ist auf der Bühne nicht angezeigt werden, es ist nur leer.

Irgendeine Idee was ist los?

+3

Do Sie haben Ihre Schriftarten eingebettet? – Daniel

+0

und wird der 'this.parent.parent' zur Bühne hinzugefügt? –

+0

Das war es, sie waren nicht für AS eingebettet. Daniel wenn du das als Antwort präsentierst, werde ich es als Lösung prüfen. – adamzwakk

Antwort

1

Die Schrift muss eingebettet sein, auch ein bisschen eine Bemerkung am Rande, wenn Sie verwenden defaultTextFormat Funktion müssen Sie es nennen, bevor Sie den Text einstellen, wenn Sie setTextFormat verwenden dann tun Sie es nach

textfield.embedFonts   = true; 
textfield.defaultTextFormat = format;   // option 1 
textfield.text    = "Hello World"; 
textfield.setTextFormat (format);    // option 2