Clase StageExt: películas flash de tamaño variable

La técnica de tamaño natural (salón de pantalla completa - de los cuales más tarde) era, hasta hace poco, se utilizan principalmente en aplicaciones Flash (RIA), lo hizo por una interfaz de usuario más o menos complejas, donde el contenedor (Adobe AIR , navegador o reproductor independiente) escalado por el usuario, obligando a un reposicionamiento de los objetos que componen la película. La reducción del tamaño del envase, obviamente, sigue una función de dibujo, o actualizar MovieClip puede cambiar la posición o el rediseño de la interfaz de tiempo de ejecución para el nuevo tamaño del contenedor. Hoy en día esta técnica también se utiliza en sitios web más avanzados o interfaz articulado, rendondo muy piadoso atractivo. La implementación de esta técnica es bastante simple y, en sustancia, el objeto de Flash Etapa nativos e introducidos con la versión MX. Para su ejecución que aquí hay una clase que permite obtener las coordenadas de la 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
/ **
*
* @ StageExt.as Archivo
* @ Autor Giovambattista Fazioli (@ g.fazioli undolog.com)
* @ Web http://www.undolog.com
* @ @ Email g.fazioli undolog.com
* /
{Clase StageExt
/ / Liberar
__release : String = "1.0" ; var __release privado: Cadena = "1.0";
/ / Propiedades
__movieWidth : Number = 0 ; var __movieWidth privado: Número = 0;
__movieHeight : Number = 0 ; var __movieHeight privado: Número = 0;
__left : Number = 0 ; var __left privado: Número = 0;
__right : Number = 0 ; var privado __right: Número = 0;
__top : Number = 0 ; var __top privado: Número = 0;
__bottom : Number = 23 ; var __bottom privado: Número = 23;
/ /
w : Number , h : Number ) { StageExt función (w: Número , h: Número ) {
"StageExt::constructor" ) ; trace ("StageExt:: constructor");
/ /
__movieWidth = w;
__movieHeight = h;
/ /
addListener ( this ) ; Pasantías addListener (este).;
}
/ **
* OnResize () evento
* /
onResize ( ) { onResize función privada () {
"StageExt::onResize " + Stage . width + ", " + Stage . height ) ; trace ("StageExt: onResize" + Etapa . ancho + "" + Etapa . de altura);
/ /
Number = Math . round ( Stage . width ) ; var sw: Número = Matemáticas y vuelta (. Etapa de ancho.)
Number = Math . round ( Stage . height ) ; var SH: Número = Matemáticas y vuelta (. Etapa de altura.)
Number = Math . round ( this . __movieWidth ) ; ow var: Número = Matemáticas . ronda (this. __movieWidth);
Number = Math . round ( this . __movieHeight ) ; Oh var: Número = Matemáticas ronda (this. __movieHeight).

/ / La coordenada x (arriba a la izquierda)

__left = - Math . floor ( ( ( sw - ow ) / 2 ) ) ; . esta __left = - Matemáticas . piso (((sw - ow) / 2));
__top = - Math . floor ( ( ( sh - oh ) / 2 ) ) ; . esta __top = - Matemáticas . piso (((sh - h) / 2));

/ / La coordenada x (parte superior derecha)

__right = Math . round ( ( sw + ow ) / 2 ) ; . esta __right = Matemáticas . round ((sw ow +) / 2);

/ / La coordenada y (abajo)

__bottom = Math . round ( ( sh + oh ) / 2 ) ; . esta __bottom = Matemáticas . round ((SH + S) / 2);
}
/ **
* Actualizar ()
* /
Refresh ( ) { public function actualizar () {
onResize ();
}
/ **
* Izquierda - se
* /
get Left ( ) : Number { public function get izquierda (): Número {
__left ) ; retorno (__left);
}
/ **
Arriba * - se
* /
get Top ( ) : Number { public function get Arriba (): Número {
__top ) ; retorno (__top);
}
/ **
* Derecho - se
* /
get Right ( ) : Number { public function get derecha (): Número {
__right ) ; retorno (__right);
}
/ **
* Fondo - se
* /
get Bottom ( ) : Number { public function get Abajo (): Número {
__bottom ) ; retorno (__bottom);
}
/ **
* MovieWidth - get / set
* /
get MovieWidth ( ) : Number { Función pública MovieWidth get (): Número {
__movieWidth ) ; retorno (__movieWidth);
}
set MovieWidth ( v : Number ) { MovieWidth conjunto de la función pública (v: Número ) {
__movieWidth = v;
}
/ **
* MovieHeight - get / set
* /
get MovieHeight ( ) : Number { Función pública MovieHeight get (): Número {
__movieHeight ) ; retorno (__movieHeight);
}
set MovieHeight ( v : Number ) { Conjunto MovieHeight función pública (v: Número ) {
__movieHeight = v;
}
}

A través de esta clase se convierte en un clip de película sencillo reubicar dentro de la Stage :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
StageExt = new StageExt ( 320 , 256 ) ; si var: = new StageExt StageExt (320, 256);
/ /
scaleMode = "noscale" ; Pasantías scaleMode = "noScale".;
addListener ( this ) ; Pasantías addListener (este).;
/ /
prototype . move = function ( x : Number , y : Number ) { MovieClip .. prototipo mover = function (x: Número , y: Número ) {
_x = x ; this . _y = y ; . esta _x = x;. _y = y este;
}
/ /
onResize función () {
"Custom Resize " + this + " - " + se . Left ) ; trace ("Cambiar tamaño personalizado" + esta + "-" + si la izquierda.)
/ / = Clip_mc._x se.Left;
/ / = Clip_mc._y se.Top;
se . Left , se . Top ) ; . clip_mc movimiento (if. izquierda, aunque arriba.)
}

En el ejemplo el tamaño de la Stage originales son de 320 × 256. Estos deben ser incluidos y considerados como de película Flash modo noScale centros dentro del navegador. ; OBJECT ed EMBED . También en el código HTML que usted necesita para ajustar el tamaño como el 100%, la apertura width para el " heght , OBJECT y EMBED .

Usted también debe organizar la jerarquía de los clips de película en el momento oportuno y siempre en cuenta que la posición de un clip de película diventra ahora "relativo".

3 comentarios para "Clase StageExt: películas de tamaño variable Flash"

  1. 12 de diciembre 2007 undolog »Blog Archive» Flash a pantalla completa en el navegador :

    [...] El código para establecer la pantalla completa es muy sencilla y aprovecha el objeto Stage discutidos en esta clase de blog StageExt: películas de tamaño variable Flash: Actionscript texto sin formato: [...]

  2. 14 de diciembre 2008 Larry:

    Hola,
    una pregunta: ¿Dónde debería poner estos dos scripts?

    Gracias,
    G.

  3. 15 de diciembre 2008 Giovambattista Fazioli :

    @ Larry:

    Hola,
    una pregunta: ¿dónde debo poner estos dos scripts Gracias,
    G.

    La primera "fuente" es una clase que puede poner en cualquier parte del código a través de la educación include . La segunda fuente es un ejemplo de su uso. Ver ActionScript 3.0 para principiantes: lección # 1 sobre la manera de crear un proyecto simple en Flash.

Deja un comentario

XHTML PERMISO TAG: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> código de inserción:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL 


Dejar de SOPA