Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-09-2006, 10:18   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 5
Mehrere Textfelder mit identischen Eigenschaften versehen?

Script zum laden und formatieren des textes:

PHP-Code:
var mf2:TextFormat = new TextFormat ();
mf2.font "Papyrus LET";
mf2.size 11;
mf2.leading 0;
mf2.color 0x31314F;
mf2.letterSpacing 1;
mf2.bold false;

//externen text laden
var my_lv:LoadVars = new LoadVars ();
my_lv.onLoad = function (success:Boolean):Void 
{
    if (
success)
    {
        
createTextField ("txt_1"00304551380);
        
txt_1.setNewTextFormat (mf2);
        
txt_1.antiAliasType "advanced";
        
txt_1.embedFonts true;
        
txt_1.multiline true;
        
txt_1.wordWrap true;
        
txt_1.selectable false;
        
txt_1.text this.text1;
        }
    else
    {
        
trace ("Error");
    }
};
my_lv.load ("texts/about.txt"); 
Problem:
Wenn ich jetzt mehrere Textfelder erzeugen will, muß ich den ganzen Käse in der if-Schleife für jedes Textfeld neu schreiben. Da die Eigenschaften der Textfelder aber immer gleich sein müssen, sehe ich irgendwie nich ein warum ich das machen soll. Gibt es vielleicht ne elegante Lösung um die Eigenschaften nur einmal für alle Textfelder festzulegen?
Subtrak ist offline   Mit Zitat antworten
Alt 28-09-2006, 10:32   #2 (permalink)
Flashbitch
 
Benutzerbild von X-Tender
 
Registriert seit: Oct 2003
Ort: Hannover
Beiträge: 279
ActionScript:
  1. var mf2:TextFormat = new TextFormat ();
  2. mf2.font = "Papyrus LET";
  3. mf2.size = 11;
  4. mf2.leading = 0;
  5. mf2.color = 0x31314F;
  6. mf2.letterSpacing = 1;
  7. mf2.bold = false;
  8.  
  9. var anzahlTextfelder = 25;
  10.  
  11. //externen text laden
  12. var my_lv:LoadVars = new LoadVars ();
  13. my_lv.onLoad = function (success:Boolean):Void
  14. {
  15.     if (success)
  16.     {
  17.         for(var i=1;i <= anzahlTextfelder;i++){
  18.             createTextField ("txt_"+i, 0, 0, 30, 455, 1380);
  19.             this["txt_"+i].setNewTextFormat (mf2);
  20.             this["txt_"+i].antiAliasType = "advanced";
  21.             this["txt_"+i].embedFonts = true;
  22.             this["txt_"+i].multiline = true;
  23.             this["txt_"+i].wordWrap = true;
  24.             this["txt_"+i].selectable = false;
  25.             this["txt_"+i].text = this.text1;
  26.         }
  27.     else
  28.     {
  29.         trace ("Error");
  30.     }
  31. };
  32. my_lv.load ("texts/about.txt");

du kansnt auch wenn die textfelder einen zu unteschieldichen namen habe, die namen dertextfelder in ein array prügeln und mit iener for in schleife dasselbe machen ...
__________________
Fuchtelworld
X-Tender ist offline   Mit Zitat antworten
Alt 28-09-2006, 10:36   #3 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hallo!
Nimm doch eine Schleife:
PHP-Code:
for(var 0i<anzahl;i++)7
createTextField 
("txt_"+ii0304551380); 
        eval(
"txt_"+i).setNewTextFormat (mf2);
... 
So in der Art. Anstelle eval vielleicht aber besser die Timeline in eine Var schreiben (am Anfang vom Script z.B. "var tl=this") und dann
PHP-Code:
...
tl.createTextField ("txt_"+ii0304551380); 
tl["txt_"+i].setNewTextFormat(mf2)
... 
verwenden.

edit -> Man bin ich langsam. Dafür habe ich wenigstens nicht vergessen, dass sich "this" auf das LoadVars-Objekt bezieht
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++

Geändert von Der Frager (28-09-2006 um 10:37 Uhr)
Der Frager ist offline   Mit Zitat antworten
Alt 28-09-2006, 11:43   #4 (permalink)
Flashbitch
 
Benutzerbild von X-Tender
 
Registriert seit: Oct 2003
Ort: Hannover
Beiträge: 279
dann macht mal halt _root. oder weiss der geier ..
__________________
Fuchtelworld
X-Tender ist offline   Mit Zitat antworten
Alt 28-09-2006, 15:50   #5 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 5
Danke, so klappt das schonmal.

Gibt es jetzt noch ne Möglichkeit, jedem Textfeld ne andere Position zu geben?
Subtrak 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 22:52 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele