Artikel Tagged 'onResize "

Resizable Flash-Filme: Act II

Rückkehr zum Beitrag StageExt Klasse: resizable Flash-Filme ist hier ein noch einfacher zu den gleichen Effekt zu erzielen, nur dann, wenn die Bibliothek für unseren Film ist mindestens eine Flash-Komponente!

Erstellen Sie ein Symbol, ein rotes Quadrat 100 × 100 und steckte es in Etappen resizeWindow Berufung. Geben Sie in der Bibliothek, nicht auf der Bühne, eine Komponente, wie eine TextInput, und geben Sie den folgenden Code in das erste Bild des Films.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
managers . SystemManager ; . importieren mx Manager SystemManager.;
/ /
scaleMode = "noscale" Praktika . scaleMode = "noScale"
/ /
/ / SystemManager.init ();
( "resize" , resizeWindow ) ; . SystemManager AddEventListener ("resize", resizeWindow);
/ /
= function ( Void ) : Void { . resizeWindow resize = function (Void): Void {
Object = SystemManager . screen ; var s: Object . = SystemManager Bildschirm;
_width = s . width ; . diese _width = s. Breite;
_height = s . height ; Diese _height = s. Höhe.;
_x = Math . round ( s . x ) ; . diese _x = Math . round (s. x);
_y = Math . round ( s . y ) ; . diese _y = Math . round (s. y);
}
( ) ; resizeWindow resize ().;

Die Linie 6 (SystemManager.init ();) kann weggelassen werden.

Fortsetzung ...

StageExt Klasse: resizable Flash-Filme

Die Technik Fullsize (Halle für Vollbild - davon später mehr) war bis vor kurzem hauptsächlich in Flash-Anwendungen (RIAs) eingesetzt, die aus so einer mehr oder weniger komplexe Benutzeroberfläche, wo der Container (Adobe AIR , Browser oder Standalone-Player) durch den Anwender skaliert, zwingt eine Neupositionierung der Objekte, aus denen der Film. Die Verkleinerung des Containers offensichtlich folgt eine Zeichnung Funktion oder Refresh MovieClip kann positionieren oder Neugestaltung der Laufzeit-Schnittstelle auf die neue Größe des Behälters. Heute wird diese Technik auch in fortgeschrittenen Websites oder artikuliert, sehr fromm rendondo attraktive Schnittstelle verwendet. Die Umsetzung dieser Technik ist sehr einfach und nutzt im Wesentlichen die native Flash-Stage-Objekt und stellte mit der Version MX. Für ihre Umsetzung ist hier eine Klasse, die die Koordinaten des zu erhalten ermöglicht Stage :

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/ **
*
* @ File StageExt.as
* @ Autor Giovambattista Fazioli (@ g.fazioli undolog.com)
* @ Web http://www.undolog.com
* @ @ Email g.fazioli undolog.com
* /
{Class StageExt
/ / Release
__release : String = "1.0" ; __release private var: String = "1,0";
/ / Eigenschaften
__movieWidth : Number = 0 ; __movieWidth private var: Anzahl = 0;
__movieHeight : Number = 0 ; __movieHeight private var: Anzahl = 0;
__left : Number = 0 ; __left private var: Anzahl = 0;
__right : Number = 0 ; __right private var: Anzahl = 0;
__top : Number = 0 ; __top private var: Anzahl = 0;
__bottom : Number = 23 ; __bottom private var: Anzahl = 23;
/ /
w : Number , h : Number ) { StageExt Funktion (w: Anzahl , h: Anzahl ) {
"StageExt::constructor" ) ; trace ("StageExt:: constructor");
/ /
__movieWidth = w;
__movieHeight = h;
/ /
addListener ( this ) ; Praktika addListener (this).;
}
/ **
* OnResize ()-Ereignis
* /
onResize ( ) { onResize private function () {
"StageExt::onResize " + Stage . width + ", " + Stage . height ) ; trace ("StageExt: onResize" + Bühne . width + "" + Bühne . height);
/ /
Number = Math . round ( Stage . width ) ; var sw: Anzahl = Math round (. Stufe Breite.);
Number = Math . round ( Stage . height ) ; var sh: Anzahl = Math round (. Stufe Höhe.);
Number = Math . round ( this . __movieWidth ) ; var ow: Anzahl = Math . round (this. __movieWidth);
Number = Math . round ( this . __movieHeight ) ; Oh var: Anzahl = Math round (this. __movieHeight);.

/ / Die x-Koordinate (oben links)

__left = - Math . floor ( ( ( sw - ow ) / 2 ) ) ; . diese __left = - Math . Etage (((sw - ow) / 2));
__top = - Math . floor ( ( ( sh - oh ) / 2 ) ) ; . diese __top = - Math . Etage (((sh - h) / 2));

/ / Die x-Koordinate (oben rechts)

__right = Math . round ( ( sw + ow ) / 2 ) ; . diese __right = Math . round ((sw + ow) / 2);

/ / Die y-Koordinate (unten)

__bottom = Math . round ( ( sh + oh ) / 2 ) ; . diese __bottom = Math . round ((sh + O) / 2);
}
/ **
* Refresh ()
* /
Refresh ( ) { public function refresh () {
onResize ();
}
/ **
* Links - get
* /
get Left ( ) : Number { public function get Left (): Anzahl {
__left ) ; return (__left);
}
/ **
* Top - get
* /
get Top ( ) : Number { public function get Top (): Anzahl {
__top ) ; return (__top);
}
/ **
* Rechts - get
* /
get Right ( ) : Number { public function get Right (): Anzahl {
__right ) ; return (__right);
}
/ **
* Bottom - get
* /
get Bottom ( ) : Number { public function get Bottom (): Anzahl {
__bottom ) ; return (__bottom);
}
/ **
* MovieWidth - get / set
* /
get MovieWidth ( ) : Number { MovieWidth public function get (): Anzahl {
__movieWidth ) ; return (__movieWidth);
}
set MovieWidth ( v : Number ) { MovieWidth public function set (v: Anzahl ) {
__movieWidth = v;
}
/ **
* MovieHeight - get / set
* /
get MovieHeight ( ) : Number { MovieHeight public function get (): Anzahl {
__movieHeight ) ; return (__movieHeight);
}
set MovieHeight ( v : Number ) { MovieHeight public function set (v: Anzahl ) {
__movieHeight = v;
}
}

Fortsetzung ...


Stoppen SOPA