Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-02-2008, 20:29   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2007
Beiträge: 246
Maske + gescriptetes textfeld funktioniert nich

hallo,

ich hab nen mc unter ner maske und in diesem mc erstelle ich nach folgendem Script ein Textfeld. Dies wird aber gar nich angezeigt. Erst dann, wenn ich das textfeld nicht per script erstelle oder die maske entferne, wird das textfeld sichtbar.

PHP-Code:

...

var 
textfeld:TextField = new TextField();
textfeld.10;
textfeld.text names[i];
textfeld.autoSize TextFieldAutoSize.LEFT;
textfeld.height 20;
textfeld.setTextFormat(MovieClip(root).tf_black_left_small);

this.addChild(textfeld); 
ich hatte schon des öfteren Probleme mit masken seit dem ich auf as3 umgestiegen bin. gibts iwie neuerungen bei den masken?

Danke,
Fellkneul
Fellkneul ist offline   Mit Zitat antworten
Alt 15-02-2008, 09:35   #2 (permalink)
setUser(true);
 
Benutzerbild von Bartolomé
 
Registriert seit: Aug 2006
Ort: Zuhause
Beiträge: 137
Also generell klappt dieses Vorgehen immer. Ich hab es sogar 1:1 nachgebaut und es funktioniert!
Möglich wäre, dass dein Textfeld außerhalb der Maske liegt und du es deshalb nicht siehst.
Was ich icht ganz verstehe ist folgende Zeile:
Code:
textfeld.setTextFormat(MovieClip(root).tf_black_left_small);
Es sieht so aus, als ob du ein textFeld aus der Flash IDE als TextFormat setzt. Soweit ich weiß ist das gar nicht möglich und daran könnte es auch liegen, dass du kein TextFeld siehst. Kommentier die Zeile doch mal aus...

Geändert von Bartolomé (15-02-2008 um 09:37 Uhr)
Bartolomé ist offline   Mit Zitat antworten
Alt 15-02-2008, 14:44   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2007
Beiträge: 246
also, ich hab das textfeld mal einfach außerhalb der Maske erstellt udn siehe da, sobald die maske weg is, klappt alles. Sogar wenn ich statt dem tf einfach eine form dahin setzte, die ich dynamisch erstellt habe, is diese form sichtbar. Wieso also das tf nicht?

die setTextFormat funktion greif auf ein textformat zu, das ich im Root bereich definiert habe.

PHP-Code:
//root
var tf_black_left_small:TextFormat = new TextFormat();
tf_black_left_small.font "Calibri";
tf_black_left_small.align TextFormatAlign.LEFT;
tf_black_left_small.size 13;
tf_black_left_small.color 0x000000;

var 
tf_black_center_small:TextFormat = new TextFormat();
tf_black_center_small.font "Calibri";
tf_black_center_small.align TextFormatAlign.CENTER;
tf_black_center_small.size 13;
tf_black_center_small.color 0x000000
Fellkneul ist offline   Mit Zitat antworten
Alt 15-02-2008, 14:46   #4 (permalink)
Neuer User
 
Registriert seit: Jan 2007
Beiträge: 246
btw ich kann das tf sogar markieren. es ist ja sogar da. und wenn ich auf das nicht sichtbare tf klicke und dann auf STRG + A(alles markieren) dann auf STRG + C und den Text woanders einfüge, kommt genau der text raus, den ich haben will. das textfeld is also da, wird aber nicht angezeigt. aber nur dann, wenn die maske da is.
Fellkneul ist offline   Mit Zitat antworten
Alt 15-02-2008, 18:48   #5 (permalink)
setUser(true);
 
Benutzerbild von Bartolomé
 
Registriert seit: Aug 2006
Ort: Zuhause
Beiträge: 137
Ich seh gerade, dass du keine Systemschriftart benutzt. hast du die denn eingebettet? Könnte sein, dass es deshalb Probleme gibt.
Hast du es denn mal ohne der textformat probiert?
Wüsste sonst so spontan auch nicht woran es noch liegen könnte...
Bartolomé ist offline   Mit Zitat antworten
Alt 15-02-2008, 20:22   #6 (permalink)
Neuer User
 
Registriert seit: Jan 2007
Beiträge: 246
geht auch nich ohne textformat... nja trotzdem danke für die hilfe...
Fellkneul ist offline   Mit Zitat antworten
Alt 18-02-2008, 09:11   #7 (permalink)
setUser(true);
 
Benutzerbild von Bartolomé
 
Registriert seit: Aug 2006
Ort: Zuhause
Beiträge: 137
hier mal mein QuellCode, mit dem 1a funktioniert, vielleicht hilft dir das ja weiter... Hab allerdings nur mit FDT programmiert ohne die Flash IDE zuu benutzen. Eventuell ist der Fehler auch da zu suchen...

PHP-Code:

package  
{
    
import flash.display.Sprite;
    
import flash.text.TextField;
    
import flash.text.TextFieldAutoSize;    


    public class 
Texter extends Sprite
    
{
        
/*
         * Constructor
         */
        
public function Texter()
        {    
            
textfeld();
        }
        
        
        private function 
textfeld() : void
        
{
            var 
sp Sprite = new Sprite();
            
sp.graphics.beginFill(0xffff001);
            
sp.graphics.drawRect(00200200);
            
this.addChild(sp);            
            
            var 
mask Sprite = new Sprite();
            
mask.graphics.beginFill(0xff00000.5);
            
mask.graphics.drawRect(00200200);
            
this.addChild(mask);            
            
sp.mask mask;        
            
            var 
text TextField = new TextField();
            
text.autoSize TextFieldAutoSize.CENTER;
            
text.textColor 0x000000;
            
text.text "Bitte warten...";
            
sp.addChild(text);    
        }
    }

Bartolomé ist offline   Mit Zitat antworten
Alt 18-02-2008, 14:06   #8 (permalink)
Neuer User
 
Registriert seit: Jan 2007
Beiträge: 246
nja ich merk jetzt, dass es geht wenn man die maske per script erstellt. hatte ohne script gearbeitet, aber mit ebenen. das scheint nich zu klappen. danke für die hilfe...
Fellkneul ist offline   Mit Zitat antworten
Alt 02-10-2008, 10:53   #9 (permalink)
Neuer User
 
Registriert seit: Aug 2008
Beiträge: 3
Hatte des selbe problem in AS2....
Hab mehrere dynamisch erzeugte Textfelder + dynamischen text!
Mit einer festen Maske die in den Ebenen festgelegt wurde, hats mir meinen dynamischen Text nicht mehr angezeigt...nur die Textfelder waren zu erkennen wenn man diese eingefärbt hat.

Als ich dann die Maske per Skript initialisiert hab, hat alles wunderbar funktioniert!
sprich mit panel.setMask(maskOver)
"panel" steht dabei für den MovieClip unter der Maske und "maskOver" spricht den MovieClip der als Maske vorgesehn wird an!

Was für mich jedoch komisch war, dass der Text verschwand sobald ich Ihn eingebettet hab....sprich funzt irgendwie nur ohne einbetten!

Vielleicht hilft des ja jemanden weiter

Gruß Basti aka Legalize

Geändert von Legalize (02-10-2008 um 10:55 Uhr)
Legalize 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 11:57 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele