Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-11-2004, 20:58   #1 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Question alpha von Text programmieren, aber wie?

Hallo alle zusammen,

ich hoffe diese Frage wurde noch nicht gestellt, habe zumindest nichts gefunden.

Gibt es eine Möglichkeit, den Alphawert von Text/Schrift zu programmiern?


Wenn ich z.B. einen Text habe, von ihm einen MC bilde, ihm einen Instanznamen "testtext" gebe und auf die MC Instanz folgendes AS lege(natürlich das ganze in einem Frameloop abgelegt):

Code:
onClipEvent(enterFrame) {
this._alpha -= 10;
}
passiert nischt.


Wenn ich nun nicht auf den text-MC sondern auf ein Schlüsselbild (wieder im Frameloop abgelegt) folgendes AS lege, passiert auch nix:

Code:
_root.testtext._alpha -= 10;

Das einzige was klappt ist per Tweening, das will ich aber ned.

Gruß Frieder
Bossman2K ist offline   Mit Zitat antworten
Alt 07-11-2004, 21:03   #2 (permalink)
Neuer User
 
Benutzerbild von lukasboehle
 
Registriert seit: Jul 2004
Ort: Köln
Beiträge: 102
Hi, der Befehl für alpha 0 wäre:

testfeld._alpha=0;

Gruß, Lukas
lukasboehle ist offline   Mit Zitat antworten
Alt 07-11-2004, 21:13   #3 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
@lukasboehle: Gilt nur bei statischen Text

@Bossman: Du mußt die Schrift erst einbetten (dein_txt.embedFonts = true; ), sofern es sich um ein Dyn. Texfeld handelt.
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::
psyk ist offline   Mit Zitat antworten
Alt 07-11-2004, 21:14   #4 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Huh?

Wo unterscheidet sich dein Vorschlag von meinem?
Außer, dass ich "testtext" nicht "testfeld" geschrieben habe und
-= und nicht = als Zuweisungszeichen genommen habe ("this._alpha -= 10;" ist eine Abkürzung für "this._alpha = this._alpha-10;")


Weitere Vorschläge wären hilfreich =)
Bossman2K ist offline   Mit Zitat antworten
Alt 07-11-2004, 21:24   #5 (permalink)
Neuer User
 
Benutzerbild von lukasboehle
 
Registriert seit: Jul 2004
Ort: Köln
Beiträge: 102
Also bei klappt es (mit stat. Textfeld)

+ sorry hatte dein AS gar nicht gelesen
lukasboehle ist offline   Mit Zitat antworten
Alt 07-11-2004, 21:35   #6 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
@lukasboehle: kk ^^
@psyk: Und dann...? Ich habe es wie folgt gestaltet; um Missverständnissen aus dem Weg zu gehen, beschreibe ich es mal Stück für Stück:

Auf der Hauptzeitleiste liegt auf Bild 1 das AS:

_root.meintxt.embedFonts = true;

Auf Bild 9 liegt:

_root.meintxt._alpha -= 10;

Auf Bild 10 liegt:

gotoAndPlay(8);

Parrallel zu den 10 Frames liegt auf einer anderen Ebene das dynamische Textfeld "meintxt".


Wenn ich den Film aber ablaufen lasse, reduziert sich der alpha-Wert aber nicht um jeweils 10% pro Durchlauf sondern der Text erscheint von Anfang an erst gar nicht..!?
Angehängte Dateien
Dateityp: zip meintext.zip (1,9 KB, 5x aufgerufen)
Bossman2K ist offline   Mit Zitat antworten
Alt 07-11-2004, 21:44   #7 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Was soll denn dein Zeil sein? Wenn du es langsam ausblenden willst, dann leg das Script in den ersten Frame.
ActionScript:
  1. this.test_txt.onEnterFrame=function(){
  2.     this._alpha-=10;
  3.     if(this._alpha<=0){
  4.         delete this.onEnterFrame;
  5.     }
  6. }
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::

Geändert von psyk (07-11-2004 um 21:49 Uhr)
psyk ist offline   Mit Zitat antworten
Alt 07-11-2004, 21:57   #8 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Ja, ich möchte den dynamischen Text (unabhängig von seinem Inhalt) ausblenden.

So 100%ig ist mir deine Strategie allerdings nicht klar, im Anhang habe ich die .fla drin, guck sie dir bitte kurz an und ändere sie so ab, wie du meinst. Ist sonst so kompliziert zu beschreiben, scheint es.

Ciao Frieder
Angehängte Dateien
Dateityp: zip meintext.zip (2,1 KB, 13x aufgerufen)
Bossman2K ist offline   Mit Zitat antworten
Alt 07-11-2004, 23:00   #9 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Ich hab das Ausblenden mal in ein Interval gepackt da kannst du dann einstellen wann wenn es losgehen soll.
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::

Geändert von psyk (07-11-2004 um 23:02 Uhr)
psyk ist offline   Mit Zitat antworten
Alt 08-11-2004, 01:01   #10 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Hmpf....
ich weiß nicht, was ich falsch mache.
Aber müsste, nicht, um den Film immer weiterlaufen zu lassen (und das AS immer wieder ausführen zu lassen), der ganze Film aus 2 Schlüsselbildern konzipiert werden, so, wie es bei einem preloader z.B. ist?

Das habe ich getan, aber es klappt nicht. Das "embedFonts" lässt den Text IMMER verschwinden.

Denk daran, dass ich Flash MX habe!
Vielleicht liegt es daran...?
Bossman2K ist offline   Mit Zitat antworten
Alt 08-11-2004, 01:11   #11 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Was meinsten du? Willst bestimmt das so haben das der Text erst ausblendet wenn man einen Button drückt.
Dann erstell ein BTN und pack ein onRelease rauf bzw. in den ersten Frame.
ActionScript:
  1. dein_btn.onRelease=function(){
  2.     _root.text_mc.onEnterFrame=function(){
  3.         this._alpha-=10;
  4.         if(this._alpha<=0){
  5.             delete this.onEnterFrame;
  6.             this._alpha=0;
  7.         }
  8.     }
  9. }
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::
psyk ist offline   Mit Zitat antworten
Alt 09-11-2004, 21:46   #12 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Nein, ich habe folgendes vor:

Innerhalb einer eigenständig ablaufenden Filmsequenz sitzt ein MC "ueberschrift" (der einen dyn. Text mit Instanznamen "meintext" beinhaltet) auf, sagen wir, Schlüsselbild 71 im Movieclip "preloader". Auf dem Text "ueberschrift" soll nun AS liegen, der beim Weiterlaufen des Films ( in der "preloader"-Ebene) den Alphawert des Textes pro Schlüsselbild um 10% reduziert.

Und noch einmal: Soblad embedFonts = true; gesetzt wird (bei Flash MX), ist von dem dyn. Text NICHTS mehr zu sehen.

Vielleicht erstellst du nochmal eben eine .fla, wenn du jetzt verstanden hast, was ich haben möchte. Dann guck ich, ob die bei mir läuft und sage dir, wenn sie nicht läuft, woran es liegen könnte.

Gruß Frieder
Bossman2K ist offline   Mit Zitat antworten
Alt 10-11-2004, 16:59   #13 (permalink)
Neuer User
 
Benutzerbild von lukasboehle
 
Registriert seit: Jul 2004
Ort: Köln
Beiträge: 102
Hi, ich nochmal.

Musste mich die letzten Tage auch mit der formatierung von dyn. Textfeldern rumschlagen. Wichtig für Schrift einbetten ist nicht nur der Befehl (embedFonts = true), man muss die Schrift natürlich auch in die Bibliothek legen... (hab ich lange nicht gemacht mit dem daraus folgenden gleichen Problem wie bei dir)
__________________
Gruß, Lukas


Ich hab zwar keine Ahnung, aber ich helfe gerne.
lukasboehle ist offline   Mit Zitat antworten
Alt 11-11-2004, 15:29   #14 (permalink)
New User();
 
Registriert seit: Jan 2003
Beiträge: 85
Die Lösung ist doch ganz einfach (jetzt, wo ich's weiß zumindest):


Szenario sieht so aus: Man hat einen MC, in diesem ist ein dyn. Text.
Ziel: Man möchte einen dynamischen Text per AS beim Durchlaufen des Films pro Schlüsselbild um 10% ausblenden (über _alpha).

Vorgehensweise:
  • Man erstellt einen MC und packt dort einen dyn. Text herein. Nicht das Vergeben der Instanznamen vergessen! Der MC heißt in unserem Fall mal mein_text, der dynamische Text dyn_text
  • Jetzt erweitert man die Hauptzeitleiste (oberste Ebene) bis auf Schlüsselbild 10 (mit F5)
  • Auf den MC (wiederum auf oberster Ebene) kommt folgendes AS:
ActionScript:
  1. onClipEvent(enterFrame) {
  2. _root.mein_text.dyn_text.embedFonts = true;
  3. this._alpha -= 10;
  4. }
  • Als letzten Schritt öffnet man den MC (mein_text), um die Eigenschaften des dynamischen Textes zu bearbeiten.
  • Dyn. Text markieren und unter Eigenschaften auf Zeichen klicken und entsprechende Checkbuttons aktivieren (zur Not alle Zeichen)
  • Fertig.



Wichtig ist halt, dass man den Text als eingebettet markiert, da sonst nichts klappt und der Text gar nicht zu sehen ist. Das war mein Fehler.

Geändert von Bossman2K (11-11-2004 um 15:32 Uhr)
Bossman2K 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 07:52 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele