Kategorie 'Flash'
Schließlich mit ActionScript 3.0 nicht mehr zwei verschiedene Management von Veranstaltungen, wie sie vor ActionScript 2.0 (siehe: Hat Event-Management: Ähnlichkeiten zwischen Flash und Javascript ). Die Methode addEventListener() , allgegenwärtig in der neuen Architektur ermöglicht die Verwaltung neu und außergewöhnlich sauber alle möglichen Ereignisse, auch persönliche. Die neue Organisation in dem Paket können Sie die Ereignisse, denen wir dienen und behandeln alle gleich zu importieren:
Fortsetzung ...
Flash CS3 hat sehr viele Neuerungen, darunter die "neugierig" auf die zum Zeitpunkt der Erstellung einige Tipps zum Schreiben von Code angeben. Dies geschieht zum Beispiel, wenn wir es mit Objekten zu tun TextField . Ich habe einen String an das Ende eines Feldes hinzufügen TextField mit der klassischen Schreibweise:
1
| + = "Stringa aggiunta" ; . mioTextField_txt text + = "string Hinzufügen"; |
Aber hier ist, dass ActionScript 3.0, beim Ausfüllen des Films, I (Warning) Filz - oder empfohlen:
Warning: 3551: Hinzufügen von Text an ein TextField mit + = ist um ein Vielfaches langsamer als die Verwendung der TextField.appendText ()-Methode.
Cool! Mal sehen, die Tatsache der Methode SYNOPSIS appendText() tatsächlich sagt:
) applicata a una proprietà text (ad esempio <strong>someTextField.text += moreText</strong> ), in particolare nel caso di un campo di testo con una quantità di contenuto significativa. Hängt die Zeichenfolge angegebenen newText am Ende das Textfeld ein. Diese Methode ist effizienter als eine Ergänzung Zuweisung ( += ) Eigenschaften angewendet, um eine text (z. B. <strong>someTextField.text += moreText</strong> ), insbesondere im Fall von ein Textfeld mit einer signifikanten Menge von Inhalten.
Wir vertrauen? Um die Sicherheit zu überprüfen:
1 2 3 4 5 6 7 8 9
| . getTimer ; flash.utils Importe getTimer.; uint = 0 ; var i: uint = 0; int = getTimer ( ) ; var s: int = getTimer (); i ; i < 10000 ; i ++ ) { for (i, i <10000; i + +) { + = "Ciao" ; text_txt + text = "Hallo".; } int = getTimer ( ) ; var f: int = getTimer (); f - s ) ; trace (f - s); |
Zeit: 9360 - auf meinem Rechner im Debug-Modus. Versuchen wir, wie durch den Compiler empfohlen:
1 2 3 4 5 6 7 8 9
| . getTimer ; flash.utils Importe getTimer.; uint = 0 ; var i: uint = 0; int = getTimer ( ) ; var s: int = getTimer (); i ; i < 10000 ; i ++ ) { for (i, i <10000; i + +) { ( "Ciao" ) ; . text_txt appendText ("Hallo"); } int = getTimer ( ) ; var f: int = getTimer (); f - s ) ; trace (f - s); |
Zeit: 8415 
Nichts Besonderes ... aber es ist wahr! ). Die Methode appendText() ist schneller und leistungsfähiger Pre-incremental-Operator ( += ). Warum? Der offensichtlichste Grund ist wie folgt: Der Operator ( += ) funktioniert auf jeder Art von Daten. Darüber hinaus in einer OO-Sprache dieses Operators ist nicht wie in C strukturiert, sondern einfach ein "Objekt". In C + +, zum Beispiel, können Sie überschreiben (Override) der Betreiber im Rahmen der Struktur des Objekts Sprache. Letztlich appendText() ist schneller, weil ihr Ziel ist es, "hängen" einen String und somit nicht wissen viele "Fragen" in ihm. Der Betreiber ( += ) sollte jedoch für jede Art von Daten zu arbeiten und ist deshalb nicht für Strings optimiert. In C, im Gegenteil, der Betreiber ( += ist) eine Funktion der Low-Level und wird immer schneller als ein Aufruf einer Funktion.
Fortsetzung ...
ActionScript 3.0 enthält eine Reihe von gewaltigen Instrumente der Kommunikation, einige völlig neue, teilweise überarbeitet und verbessert von früheren Versionen von ActionScript. Wir beginnen zu sehen, wie es die Art und Weise der Interaktion mit einem Web-Server im Falle eines einfachen Kommunikation zwischen Flash und PHP-Seite mit der XML-Antwort Veränderungen. Vor allem das Objekt XML existiert nicht mehr! ActionScript 3.0 wurden neue Klassen wurden, von denen einige auf die "Abwärtskompatibilität" gewidmet.
Hinweis: Die XML-Klasse (zusammen mit zugehörigen Klassen) von ActionScript 2.0 umbenannt wurden XMLDocument und zog in die flash.xml Paket. Es ist in ActionScript 3.0, um die Kompatibilität mit früheren Versionen zu gewährleisten.
usando il metodo sendAndLoad() dell'oggetto LoadVars (vedi: Flash: LoadVars e XML per inviare dati in POST ). In ActionScript 2.0 Kommunikation mit einem Web Server wurde oft durch die einzigartige Kombination von Objekten gelöst LoadVars und XML, mit der Methode sendAndLoad() -Objekt LoadVars (siehe Flash: LoadVars-und XML-Daten in POST senden ). Nun liegen die Dinge ändern sich, aber Sie gerade einen neuen Namen und Objekte zu gewöhnen. Wie im Handbuch, in der Tat angezeigt:
Fortsetzung ...
Aufgrund seiner Fähigkeit, mit dem Server kommunizieren, das XMLHttpRequest-Objekt (XHR), in der verwendeten Technologie Ajax hat (ein Akronym für Asynchronous JavaScript and XML, die "egiacs" ausgesprochen werden sollten, obwohl wir italienische "aiacs" bevorzugen), eine Sicherheitssperre verhindert, dass Sie die Ausführung von Anwendungen außerhalb der Domäne, in der sie tätig ist. Dieser Schutz ist notwendig, um JavaScript Injection (Techniken der "injection" extrem gefährlich Code, um das System zu brechen) verschiedener Art, mit dem Endziel der "break" in das System zu verhindern.
Diese Grenze wird nun ernst genommen und man denkt, irgendwie, um es zu lösen - direkt in den XmlHttpRequest - ohne Kompromisse bei der Sicherheit (siehe auch: Third Vorschlag für Cross-Site-Erweiterungen für XMLHttpRequest ).
Was ist die Situation heute wie folgt:
Fortsetzung ...
Einige Leser haben mich gefragt, wie es die Schneeflocke, so realistisch, entstand das Widget Weihnachten . Diejenigen, die die Quelle, die Sie wahrscheinlich schon wissen, heruntergeladen haben ... aber es war wirklich einfach. Zuerst wählte ich den Pinsel in Flash, und ich zog einen Punkt.
Ich drehte mich um diese in ein Symbol und bewarb ich mich zwei Effekte in der richtigen Reihenfolge: Kegel-und Unschärfe:
Das Ergebnis war: 
An diesem MovieClip (Symbol) mit einer einfachen Klasse I zugeordnet CNeve , die tatsächlich schafft die Intelligenz der Grundnahrungsmittel selbst:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| MovieClip { Cneve Klasse erweitert MovieClip { _interval ; private var _interval; _maxy : Number ; _maxy private var: Anzahl ; / / Cneve function () { this , "_move" , 25 ) ; _interval = setInterval (this, "_move", 25); round ( ( Stage . height + 256 ) / 2 ) + _getRndRange ( - 20 , - 7 ) ; _maxy = Math . round (( Stufe Höhe + 256) / 2.) + _getRndRange (- 20, - 7); } / / _getRndRange ( min : Number , max : Number ) : Number { private function _getRndRange (min: Anzahl , max: Anzahl ): Anzahl { Number = Math . floor ( Math . random ( ) * ( max - min + 1 ) ) + min ; var randomNum: Anzahl = Math . floor ( Math . random () * (max - min + 1)) + min; randomNum return; } / / _move ( ) { _move private function () { 1 , 5 ) ; _getRndRange _y + = (1, 5); _getRndRange ( - 50 , 50 ) ) > 0 ) ? 1 : - 1 ; _x + = ((_getRndRange (- 50, 50))> 0) 1: -? 1; 1 , 5 ) ; _getRndRange _rotation + = (1, 5); _y > _maxy ) { if (_y> _maxy) { _interval ) ; clearInterval (_interval); } ; updateAfterEvent (); } } |
Die Methode _move() enthält die Intelligenz der Grundnahrungsmittel, die die Funktion eines Sturzes ist sehr einfach. Durch Variation der Random-Funktion _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, si può aggiungere un effetto effetto vento, cioè i fiocchi cadono con una pendenza particolare. _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, zum Beispiel durch das Einfügen eines _getRndRange(-550, 50), können Sie einen Effekt hinzufügen Wind Effekt, dass die Flakes mit einer bestimmten Steigung fallen. Insbesondere können die Flocken auf der rechten Seite geschickt und links mit einem Code wie folgt aus:
1
| _getRndRange ( _getRndRange ( - 350 , - 50 ) , _getRndRange ( 50 , 350 ) ) ) > 0 ) ? 1 : - 1 ; _x + = ((_getRndRange (_getRndRange (- 350, - 50), _getRndRange (50, 350)))> 0) 1: -? 1; |
Die Rotation ( _rotation += _getRndRange(1, 5); ) ergibt dies ein weiteres Detail, um den Bogen selber.
e uno scale randomico, per avere fiocchi di neve di diverse dimensioni. Wenn ich einen Bogen (siehe Funktion erstellen creaFiocco() unten) I Außerdem wurde ein alpha=90 Stufen und eine zufällige, um Schneeflocken in verschiedenen Größen zu haben.
1 2 3 4 5 6 7 8 9 10 11 12
| / / Heftung erstellen creaFiocco function () { 20 , 100 ) ; randRange var s = (20, 100); = randRange ( - Math . floor ( ( Stage . width - 320 ) / 2 ) , Math . round ( ( Stage . width + 320 ) / 2 ) ) ; randRange var x = (- Math floor ((. Stufe Breite - 320) / 2),. Math round ((. Stufe Breite + 320) / 2).); = - Math . floor ( ( ( Stage . height - 256 ) / 2 ) ) - 10 ; var = y - Math Etage (((. Stufe Höhe - 256) / 2).) - 10; "neve" , "neve_" + index , index , { _x : x , _y : y , _xscale : s , _yscale : s , _alpha : 90 } ) ; . c_mc attachMovie ("Schnee", "neve_" + index, index, {_x: x, _y: y, _xscale: s, _yscale: s, _alpha: 90}); index + +; index > 1000 ) { if (index> 1000) { ; index = 1; , 2 ) ; c_mc = createEmptyMovieClip ("c_mc", 2); } } |
Und das ist alles ...
Ich vergaß ... Frohe Feiertage und die besten Wünsche an alle ... 
Fortsetzung ...
Heute schlage ich eine interessante Variante des "klassischen" analogen Uhr in Flash. Diese Version enthält einen Übergang zwischen Anfang des Films. Ich war zu Gadgets in Windows Vista, dass in der Tat, diese schöne Wirkung beim Start inspiriert.
Der Code ist in ActionScript 2.0 geschrieben und hat mit dem neuen Adobe Flash CS3 erstellt. Dies zeigt, dass die neue CS3-Suite voll kompatibel mit früheren Versionen von Flash, ein äußerst wichtiger Punkt für diejenigen, die beschlossen, die Produkt-Updates prüfen haben wird.
Für die Quelle klicken Sie hier .
Fortsetzung ...
Dank "angespornt" von TV Revolution Ich machte einen kleinen Weihnachts-Widgets (sehen, ob wir es mit Ihren Anmerkungen zu verbessern).
So verwenden Sie einfach den folgenden Code auf Ihrer Website:
Der Parameter h bestimmt die Höhe in Pixel des Films. Standardmäßig ist dies in absoluten Position und Breite auf 100% gezeigt. Um diese Einstellung zu ändern verwendet abs=0 , um den Schnee in der Seite zu platzieren, nicht oben. Verwenden Sie stattdessen w=800 , um eine persönliche Dimension gesetzt. Zum Beispiel:
Create Schnee 50 Pixel, 640 Pixel breit, und die relative Position, wie unten dargestellt:
Fortsetzung ...
Für einige Entwickler müssen nur wissen, dass es eine neue Version ihres bevorzugten Weiterbildung Paket zu laufen und kaufen Sie das Upgrade. Andere, völlig zu Recht, mehr Ruhe und Pflege einer "vorgeben", um die tatsächliche Verbesserung in der neuen Version kennen, bevor Sie Ihre Gewohnheiten zu ändern. Im Fall von Adobe Flash CS3 ist nicht viel zu erwarten, angesichts der vielen Veränderungen, die das Paket durchlaufen hat seit Macromedia durch Adobe übernommen wurde.
Hier ist also zu 10 einfache, aber wichtige Gründe, in meine persönliche Meinung, genug um Sie zu überzeugen, um ein Upgrade Adobe Flash CS3 . Ich werde zu konzentrieren, natürlich nur auf die Dinge, die mir auffiel, persönlich, das ist nicht als abschließende Aufzählung all der vielen Innovationen, die von der CS3-Suite eingeführt gedacht, um nur eine Fliege zu antizipieren einige Funktionen von CS3.
1. Installation
Die Installation ist nett und schnell, im Vergleich zu früheren Versionen. Es beinhaltet unter anderem, mit allen Adobe-Produkten (Dreamweaver CS3, Photoshop CS3 Extended, etc ...), die die Installation / Deinstallation macht, und aktualisieren zu einem wahren Vergnügen.
2. Abwärtskompatibilität
Ein Thema, oft übersehener, aber immer berücksichtigt in der Geschichte der Flash-genommen: Die Fähigkeit zu früheren Versionen des Produkts zu verwalten. In Flash CS3 hat alle Werkzeuge zur Manipulation ist es, die frühere Versionen unserer Filme zu migrieren. Wir finden diese Möglichkeit bei der Fehlersuche (Debugging einer separaten ActionScript 2.0 und ActionScript 3.0) ist in den Prozess der Fertigstellung des Films. Schreiben Sie jetzt Actionscript 3.0 Flash-Anwendungen könnte kontraproduktiv sein in bestimmten Zusammenhängen. Wenn Ihr Ziel-Site hat einen hohen Traffic können Sie feststellen, dass viele Anwender noch nicht die neuesten Versionen von Flash Player für Ihren Browser installiert und dann nicht sehen würde den Film. Jedoch, wie oben erwähnt, Flash CS3 können Sie Flash-Anwendungen mantendedo Abwärtskompatibilität zu entwickeln und damit ich nicht sehen dies als eine große ostocalo nell'upgrade Produkt.
3. GUI-und IDE-

Die IDE Flash CS3 (wie Dreamweaver CS3) wurde überarbeitet, um besser. Die Tafeln (siehe Bild links), oft unbequem in vorherigen Versionen wurden komplett überarbeitet und nun ihre Verwendung ist viel weniger invasiv.
Darüber hinaus ist die Möglichkeit, Platten zu minimieren (siehe Abbildung rechts) stellte fest, dass macht eine echte attraktive und funktionale Schnittstelle. Wenn eine Platte in Symbol-Modus nimmt viel weniger Platz und mit einem einfachen Klick öffnen Sie die erste Haupt-Panel immer sichtbar.
Alle IDE, kurz gesagt, ist auch der zentrale Bereich mit dem Fenster für die Bearbeitung und Grafik-Code wurde überarbeitet. Glauben Sie nicht darauf hin, alle Änderungen, oder du wirst die Überraschung ruinieren ...

Fortsetzung ...
Wie kann ein behinderter TextField Eingabemodus Da die Eigenschaft enabled ist nicht verfügbar, können Sie eine einfache Kunstgriff: change Laufzeit Zustand der TextField. Glücklicherweise sind die Flash-Entwicklern erlaubt, den Status eines TextField auch durch das Grundstück führen zu ändern type . Daraus folgt, dass, wenn ein TextField auf die Bühne als Eingabe (und damit hinzugefügt wird type="input" ), durch den Code, können wir es in einem Text "static" abbiegen. In Wirklichkeit verwandeln sie in dynamischen Text ( type="dynamic" ), sondern das visuelle Ergebnis ist das gleiche. Der Kunstgriff funktioniert, weil sowohl die TextField TextField Eingabe der dynamischen Eigenschaften den gleichen Anteil text . Also, wenn ich einen Text in einem TextField-Eingang, wenn sie in eine dynamische TextField verwandelt haben nur den Eindruck, nicht in der Lage, um Zeichen zu setzen! Dass ich die TextField-Eingang deaktiviert!
Das TextField-Objekt kann auch als MovieClip erweitert werden, dann können wir mit dem folgenden Code nützlich sein:
1 2 3
| prototype . Enabled = function ( v : Boolean ) { TextField . Prototyp Enabled = function (v:. Boolean ) { type = v ? "input" : "dynamic" ; .? dieses v type = "input": "dynamic"; }; |
Fortsetzung ...
di Flash. Illustrieren Sie eine Technik, Symbole zu schaffen (MovieClip) modalen Komponenten ähnlich wie die eingesetzt werden Alert und Window von Flash. Das Ziel ist es, eine MovieClip vor allen anderen zu zeigen, deaktivieren - auch - den Zugriff auf die zugrunde liegende und jedes andere Objekt / Komponente vorhanden ist. Um ehrlich zu sein habe ich erreicht, dass dadurch ein wenig "reverse engineering Code von Adobe, die in der klar ist! Ich tatsächlich widerstanden 
Die artefizio, die verwendet werden, um eine beliebige Schnittstelle Im Folgenden präsentieren wir MovieClip deaktivieren ist, ist die Schaffung eines transparenten MovieClip nehmen die gesamte Fläche der Bühne. a false . An diesem MovieClip, wird die praktisch keine sichtbaren eine Methode "void" auf das Ereignis schnappt onRelease , wobei darauf geachtet, die gesetzt useHandCursor zu false .
Zunächst erstellen wir einen Film mit einer Schnittstelle in der Hauptbühne:

Fortsetzung ...
Neueste Kommentare
Simon : Es ärgert gestört wieder ein und verwenden, die Platz für diese Dinge ... aber es funktioniert nicht ...
Giovambattista Fazioli : @ Simon: Was könnte darauf zurückzuführen sein, die Syntax, die ich verwendet, die speziell für PHP 5 +,...
Simon : Ich habe versucht gestern Abend, alles in functions.php, okay, jquery Formulare und Tabs jQueryUI ihnen ...
Giovambattista Fazioli : @ Simon: Ich empfehle Reinigung zu einem Code wie in ein ...
Simon : @ Giovambattista Fazioli: Vielen Dank für Ihre Geduld, es ist alles klar ... jetzt fühle ich mich jetzt ...