<mx:tagname Properties customFilter="" duration="500" filter="" hideFocusRing="false" perElementOffset="0" repeatCount="1" repeatDelay="0" startDelay="0" suspendBackgroundProcessing="false|true" target="effect target" targets="array of effect targets" Events effectEnd="No default" efectStart="No default" />]]>
In einer Anwendung erstellen Sie die Instanzen der Effect-Klasse nicht selbst. Stattdessen erstellen Sie eine Instanz einer Unterklasse wie Fade oder WipeLeft.
Zum Starten eines Effekts sind normalerweise drei Schritte notwendig:
target[property] = value;
Überschreiben Sie diese Methode nur, wenn Sie die erfassten Werte auf andere Art anwenden müssen. Beachten Sie, dass Stileigenschaften eines Ziels durch einen anderen Mechanismus eingestellt werden. Mit der
Flex ruft diese Methode von der Methode
Überschreiben Sie beim Erstellen eines benutzerdefinierten Effekts diese Methode, um Eigenschaften von der Effektklasse in die Effektinstanzklasse zu kopieren. Rufen Sie beim Überschreiben
Diese Eigenschaft muss im Konstruktor aller Unterklassen der Effect-Klasse eingestellt sein.
In den meisten Fällen sollten Sie diese Eigenschaft auf
<mx:tagname createMaskFunction="" moveEasingFunction="" scaleEasingFunction="" scaleXFrom="" scaleXTo="" scaleYFrom="" scaleYTo="" show="true|false" xFrom="" xTo="" yFrom="" yTo="" />]]>
Bei einem Maskierungseffekt wird der Effekt mit einer Überlagerung durchgeführt, die auch Maske genannt wird. Standardmäßig besteht die Maske aus einem Rechteck in der Größe der Zielkomponente.
Der Status der Zielkomponente vor oder nach dem Maskierungseffekt muss unsichtbar sein. Das bedeutet, dass eine Zielkomponente durch einen Maskierungseffekt auf dem Bildschirm immer entweder ein- oder ausgeblendet wird.
Mit den Eigenschaften
Mit den Eigenschaften
Die Koordinaten von Anfangs- und Endposition der Maske hängen vom Effekttyp ab und davon, ob die Eigenschaft
Ist die
Wird ein Effekt ein einziges Mal wiedergegeben, wird dieses Ereignis zur gleichen Zeit wie das
Das
Wenn Sie für einen benutzerdefinierten Effekt eine Unterklasse zur MaskEffect-Klasse erstellen und diese einen anderen Satz Eigenschaften des Ziels ändert, müssen Sie diese Methode überschreiben und ein Array mit einer Liste der durch die Unterklasse geänderten Eigenschaften zurückgeben.
Die Signatur der benutzerdefinierten Maskenfunktion lautet:
public function createLargeMask(targ:Object, bounds:Rectangle):Shape { var myMask:Shape = new FlexShape(); // Create mask. return myMask; }
Die benutzerdefinierte Maskenfunktion akzeptiert ein Argument, das der Zielkomponente des Effekts entspricht und ein zweites Argument, das die Abmessungen des Ziels definiert, sodass Sie die Maske in der richtigen Größe erstellen können. Sie verwenden das Argument für den Zugriff auf Eigenschaften der Zielkomponente, wie
Die Funktion gibt ein Shape-Objekt zur Definition der Maske zurück.
Um diese Eigenschaft festzulegen, müssen Sie alle vier Eigenschaften,
Um diese Eigenschaft festzulegen, müssen Sie alle vier Eigenschaften,
Um diese Eigenschaft festzulegen, müssen Sie alle vier Eigenschaften,
Um diese Eigenschaft festzulegen, müssen Sie alle vier Eigenschaften,
Um diese Eigenschaft festzulegen, müssen Sie alle vier Eigenschaften,
Um diese Eigenschaft festzulegen, müssen Sie alle vier Eigenschaften,
Um diese Eigenschaft festzulegen, müssen Sie alle vier Eigenschaften,
Um diese Eigenschaft festzulegen, müssen Sie alle vier Eigenschaften,
<mx:SoundEffect>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:SoundEffect Properties id="ID" autoLoad="true|false" bufferTime="1000" loops="0" panEasingFunction="" panFrom="0" source="" startTime="0" useDuration="true|false" volumeEasingFunction="true|false" volumeTo="1" Events complete="No default" id3="No default" ioError="No default" progress="No default" />]]>
Sie geben die MP3-Datei mit der
Innerhalb des Ereignisobjekts können Sie auf die Anzahl der aktuell geladenen Bytes und die insgesamt zu ladende Anzahl von Bytes zugreifen. Das Ereignis wird nicht immer ausgelöst. In manchen Fällen tritt das
Die
<mx:TweenEffect>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:TagName Properties easingFunction="easing function name; no default" Events tweenEnd="No default" />]]>
Sie erstellen eine Unterklasse der TweenEffect-Klasse, um einen Effekt zu definieren, der eine Animation während eines Zeitraums wiedergibt. Der Größenänderungseffekt ändert beispielsweise die Größe des Ziels für einen angegebenen Zeitraum.
Wird ein Tweeneffekt ein einziges Mal wiedergegeben, wird dieses Ereignis zur gleichen Zeit wie das
Das
Wenn keine Beschleunigungsfunktion angegeben wird, wird eine Beschleunigungsfunktion auf der Basis der
Die Beschleunigungsfunktion setzt die durch Robert Penner bekannt gewordene Funktionssignatur ein. Die Funktion akzeptiert vier Argumente. Das erste Argument ist die „aktuelle Zeit“, wobei die Startzeit der Animation 0 entspricht. Das zweite Argument ist der Wert am Anfang der Animation (eine Zahl). Das dritte Argument ist der Endwert abzüglich des Anfangswerts. Das vierte Argument ist die Dauer der Animation. Der Rückgabewert ist der interpolierte Wert für die aktuelle Zeit. Dies ist normalerweise ein Wert zwischen dem Anfangs- und Endwert.
Der Wert dieser Eigenschaft muss ein Funktionsobjekt sein.
Das mx.effects.easing-Paket von Flex enthält einen Satz Beschleunigungsfunktionen.
Bei der Definition von Tweeneffekten erstellen Sie normalerweise eine Instanz der Tween-Klasse innerhalb Ihrer Überschreibung der
Das Tweenobjekt ruft während der Dauer des Effekts regelmäßig die
Am Ende des Effekts rufen Tweenobjekte die
Wenn der Konstruktor aufgerufen wird, beginnt automatisch die Wiedergabe der Animation.
Auf diese Art können Sie verschiedene Methoden als Update- und End-Rückruffunktionen festlegen.
Wenn keine Beschleunigungsfunktion angegeben wird, wird eine Beschleunigungsfunktion auf der Basis der
Die Beschleunigungsfunktion setzt die durch Robert Penner bekannt gewordene Funktionssignatur ein. Die Funktion akzeptiert vier Argumente. Das erste Argument ist die „aktuelle Zeit“, wobei die Startzeit der Animation 0 entspricht. Das zweite Argument ist der Wert am Anfang der Animation (eine Zahl). Das dritte Argument ist der Endwert abzüglich des Anfangswerts. Das vierte Argument ist die Dauer der Animation. Der Rückgabewert ist der interpolierte Wert für die aktuelle Zeit (normalerweise ein Wert zwischen dem Anfangs- und Endwert).
Das mx.effects.easing-Paket von Flex enthält einen Satz Beschleunigungsfunktionen.
Effektentwickler müssen eine Instanzklasse für ihre benutzerdefinierten Effekte erstellen.
<mx:Zoom>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Zoom id="ID" captureRollEvents="false|true" originX="Calculated" originY="Calculated" zoomWidthFrom="0.01" zoomWidthTo="1.0" zoomHeightFrom="0.01" zoomHeightTo="1.0" />]]>
Wenn Sie einen Zoomeffekt auf Text anwenden, der mit einer Systemschriftart gerendert wird, skaliert Flex den Text zwischen ganzen Punktgrößen. Eingebettete Schriftarten sind zwar keine Voraussetzung für die Anwendung eines Zoomeffekts, jedoch wirkt der Effekt dadurch gleichmäßiger.
Hinweis: Der Zoomeffekt funktioniert nicht, wenn die
Sie lösen beispielsweise mit
Der Wert muss zwischen 0 und der Breite der Zielkomponente liegen.
Der Standardwert istDer Wert muss zwischen 0 und der Höhe der Zielkomponente liegen.
Der Standardwert ist<mx:AnimateProperty>
tag
inherits all the tag attributes of its superclass
and adds the following tag attributes:
<mx:AnimateProperty id="ID" fromValue="0" isStyle="false|true" property="required" roundValue="false|true" toValue="0" />]]>
Wenn Sie beispielsweise die Breite eines Button-Steuerelements ändern, können Sie
<mx:Move>
tag
inherits all of the tag attributes of its of its superclass,
and adds the following tag attributes:
<mx:Move id="ID" xFrom="val" yFrom="val" xTo="val" yTo="val" xBy="val" yBy="val" />]]>
Wenn Sie zwei Werte (Anfangsposition, Zielposition oder Verschiebung) angeben, berechnet Flex den dritten Wert. Wenn Sie alle drei Werte angeben, ignoriert Flex die
Wenn Sie einen Verschieben-Effekt für einen
Normalerweise wenden Sie diesen Effekt auf ein Ziel in einem Container an, der absolute Positionen verwendet, wie ein Arbeitsflächencontainer, oder für den
<mx:Iris>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Iris id="ID" />]]>
<mx:Sequence>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Sequence id="identifier"> <mx:children> <!-- Specify child effect tags --> </mx:children> </mx:Sequence>]]>
Sie können einen Sequenzeffekt in MXML wie in folgendem Beispiel gezeigt erstellen:
<mx:Sequence id="WipeRightUp"> <mx:children> <mx:WipeRight duration="1000"/> <mx:WipeUp duration="1000"/> </mx:children> </mx:Sequence> <mx:VBox id="myBox" hideEffect="{WipeRightUp}"> <mx:TextArea id="aTextArea" text="hello"/> </mx:VBox>
Beachten Sie, dass das
Zum Starten eines Composite-Effekts in ActionScript sind normalerweise fünf Schritte erforderlich:
myFadeEffect = new mx.effects.Fade(target);
mySequenceEffect = new mx.effects.Sequence();
mySequenceEffect.addChild(myFadeEffect);
mySequenceEffect.play();
<mx:Dissolve>
tag
inherits the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Dissolve id="ID" alphaFrom="val" alphaTo="val" color="val" />]]>
Wenn das Zielobjekt ein Container ist, wird der Auflösungseffekt auf den Inhaltsbereich des Containers angewendet. Der Inhaltsbereich ist die Region, in der die Hintergrundfarbe des Containers sichtbar ist.
Hinweis: Um den Auflösungseffekt mit dem
Wenn die Zielkomponente durch den Effekt ausgeblendet wird, entspricht der Standardwert dem aktuellen Wert der
Wenn die Zielkomponente durch den Effekt ausgeblendet wird, ist der Standardwert 0,0. Wenn die Zielkomponente durch den Effekt eingeblendet wird, entspricht der Standardwert dem aktuellen Wert der
<mx:Blur>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Blur id="ID" blurXFrom="val" blurXTo="val" blurYFrom="val" blurYTo="val" />]]>
Der Weichzeichnungseffekt verwendet die BlurFilter-Klasse von Flash als Teil der Implementierung. Weitere Informationen finden Sie im Abschnitt zu flash.filters.BlurFilter.
Wenn Sie einen Weichzeichnungseffekt auf eine Komponente anwenden, können Sie keinen BlurFilter und auch keinen zweiten Weichzeichnungseffekt für die Komponente verwenden.
Flex ruft die
Flex verwendet diese Funktion, wenn ein Datenänderungseffekt ausgeführt wird.
Verwenden Sie diese Funktion, um die Anfangs- und Endwerte des Effekts durch den Effekt selbst ermitteln zu lassen. Die ordnungsgemäße Verwendung der Funktion erfolgt in diesen Schritten:
Die Effektinstanz wird mit dem in der
Durch Aufrufen der
Diese Funktion wird automatisch von der
Die Effektinstanz löst ein
Wenn Sie eine Effektinstanz als Argument übergeben, wird nur diese Instanz unterbrochen. Wenn kein Argument übergeben wird, werden alle aktuellen Instanzen des Effekts unterbrochen.
Jede Unterklasse des Effekts muss diese Methode implementieren. Mit dieser Methode sorgt der EffectManager dafür, dass dieselbe Eigenschaft desselben Objekts nicht durch zwei verschiedene Effekte animiert wird.
Alle Unterklassen müssen diese Methode implementieren.
Die Effektinstanz löst ein
Bei Maskierungseffekten wird die Maske beim Anhalten eines Effekts nicht automatisch entfernt. Wenn Sie weitere Maskierungseffekte auf dem gleichen Ziel ausführen, ohne die Maske zuvor zu entfernen, kann es zu unerwarteten Ergebnissen kommen.
Dies ist ein kurzer oder unqualifizierter Klassenname, der den Paketnamen nicht einschließt. Wenn Sie den qualifizierten Namen benötigen, verwenden Sie die
Ziele werden nur gefiltert, wenn Sie die
Verwenden Sie die
Bei einem Parallel- oder Sequenzeffekt legt die
Bei einem wiederholten Effekt gibt die
Ziele werden nur gefiltert, wenn Sie die
Verwenden Sie diese Eigenschaft zum einfachen Filtern. Verwenden Sie die
Sie können die folgenden Werte für die
Setzen Sie diese Eigenschaft auf
Für Unterklassen der Effect-Klasse lautet der Standardwert
Der Standardwert entspricht dem Array, das von der
Der Standardwert entspricht dem Array, das von der
<mx:Pause>
tag
inherits all the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Pause id="ID" eventName="null" />]]>
Das Warten auf einen
Diese Eigenschaft ist optional. Standardmäßig wird der Effekt wiedergegeben, ohne dass auf ein Ereignis gewartet wird.
<mx:tagname> <mx:children> <!-- Specify child effect tags --> </mx:children> </mx:tagname>]]>
Sie können einen Composite-Effekt in MXML wie in folgendem Beispiel gezeigt erstellen:
<mx:Parallel id="WipeRightUp"> <mx:children> <mx:WipeRight duration="1000"/> <mx:WipeUp duration="1000"/> </mx:children> </mx:Parallel> <mx:VBox id="myBox" hideEffect="WipeRightUp"> <mx:TextArea id="aTextArea" text="hello"/> </mx:VBox>
Das
Zum Starten eines Composite-Effekts in ActionScript sind normalerweise fünf Schritte erforderlich:
myFadeEffect = new mx.effects.Fade(target);
mySequenceEffect = new mx.effects.Sequence();
mySequenceEffect.addChild(myFadeEffect);
mySequenceEffect.play();
Diese Funktion wird von einem
<mx:SetStyleAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:SetStyleAction Properties id="ID" style="" value="" />]]>
Wenn Sie für einen benutzerdefinierten Effekt eine Unterklasse zu dieser Klasse erstellen, müssen Sie diese Methode überschreiben und ein Array mit einer Liste der durch die Unterklasse geänderten Stileigenschaften zurückgeben.
<mx:Rotate>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Rotate id="ID" angleFrom="0" angleTo="360" originX="0" originY="0" />]]>
Hinweis: Um den Dreheffekt mit Text zu verwenden, müssen Sie eine eingebettete Schriftart und keine Geräteschriftart verwenden.
Wenn der Wert
Die EffectTargetFilter-Klasse definiert eine
Sie können auch eine benutzerdefinierte Filterfunktion zum Implementieren Ihrer eigenen Filterlogik erstellen. Definieren Sie dazu die Filterfunktion und geben Sie sie einem EffectTargetFilter-Objekt mithilfe der
Um einen Effekt zur Verwendung eines benutzerdefinierten Filters zu konfigurieren, übergeben Sie ein EffectTargetFilter-Objekt an die
Die Filterfunktion hat folgende Signatur:
filterFunc(propChanges:Array, instanceTarget:Object):Boolean { // Return true to play the effect on instanceTarget, // or false to not play the effect. }
wobei:
Wenn Sie eine benutzerdefinierte Filterfunktion erstellen, können Sie die
Wenn Sie eine benutzerdefinierte Filterfunktion erstellen, können Sie die
Bei der Arbeit mit Dateneffekten können Sie mit dieser Eigenschaft Effekte filtern. Wenn Sie einen Dateneffekt auf allen Zielen eines Listensteuerelements wiedergeben möchten, die durch diesen Effekt nicht hinzugefügt werden, das heißt an Zielen, die entfernt, ersetzt, verschoben oder auf andere Art verändert werden, können Sie den Effekt wie folgt definieren:
<mx:Blur> <mx:customFilter> <mx:EffectTargetFilter requiredSemantics="{{'added':false}}"/> </mx:customFilter> </mx:Blur>
Um einen Dateneffekt auf allen Zielen wiederzugeben, die nicht vom Effekt hinzugefügt oder entfernt werden, können Sie den Effekt wie folgt definieren:
<mx:Blur> <mx:customFilter> <mx:EffectTargetFilter requiredSemantics="{{'added':false}, {'removed':false}}"/> </mx:customFilter> </mx:Blur>
Zu den zulässigen Eigenschaften, die Sie angeben können, zählen:
<mx:Fade>
tag
inherits the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Fade id="ID" alphaFrom="val" alphaTo="val" />]]>
Wenn Sie den Effekt „Ein-und ausblenden“ für den
Hinweis: Um den Effekt „Ein-und ausblenden“ mit Text zu verwenden, müssen Sie eine eingebettete Schriftart und keine Geräteschriftart verwenden.
Wenn die Zielkomponente durch den Effekt ausgeblendet wird, entspricht der Standardwert dem aktuellen Wert der
Wenn die Zielkomponente durch den Effekt ausgeblendet wird, ist der Standardwert 0,0. Wenn die Zielkomponente durch den Effekt eingeblendet wird, entspricht der Standardwert dem aktuellen Wert der
<mx:Parallel id="identifier"> <mx:children> <!-- Specify child effect tags --> </mx:children> </mx:Parallel>]]>
Sie können einen Paralleleffekt in MXML wie in folgendem Beispiel gezeigt erstellen:
<mx:Parallel id="WipeRightUp"> <mx:children> <mx:WipeRight duration="1000"/> <mx:WipeUp duration="1000"/> </mx:children> </mx:Parallel> <mx:VBox id="myBox" hideEffect="{WipeRightUp}" > <mx:TextArea id="aTextArea" text="hello"/> </mx:VBox>
Beachten Sie, dass das
Zum Starten eines Paralleleffekts in ActionScript sind normalerweise fünf Schritte erforderlich:
myFadeEffect = new mx.effects.Fade(target);
myParallelEffect = new mx.effects.Parallel();
myParallelEffect.addChild(myFadeEffect);
myParallelEffect.play();
Effektentwickler müssen eine Instanzklasse für ihre benutzerdefinierten Effekte erstellen.
Die Effektinstanz löst ein
In einer EffectInstance-Unterklasse können Sie diese Methode optional überschreiben. Dabei sollten Sie die
Sie müssen diese Methode in einer Unterklasse nicht überschreiben. Bei der Verwendung von Effekten brauchen Sie diese Methode nicht aufzurufen. Dagegen kann der Aufruf beim Erstellen einer Effekt-Unterklasse notwendig sein.
Sie müssen diese Methode in einer Unterklasse nicht überschreiben. Sie müssen diese Methode bei der Verwendung von Effekten nicht aufrufen.
In einer EffectInstance-Unterklasse müssen Sie diese Methode überschreiben. Die Überschreibung muss die
Die Effektinstanz löst ein
Dies ist ein kurzer oder „unqualifizierter“ Klassenname, der den Paketnamen nicht einschließt. Wenn Sie den qualifizierten Namen benötigen, verwenden Sie die
Setzen Sie diese Eigenschaft auf
Für Unterklassen der Effect-Klasse lautet der Standardwert
Sie verwenden eine
Wenn der Effekt programmgesteuert durch einen Aufruf der