El documento describe el lenguaje de programación ActionScript utilizado en Flash. ActionScript permite controlar todos los aspectos de una película Flash y es un lenguaje orientado a objetos basado en ECMA-262 como JavaScript. Flash también permite dividir las películas en escenas para separar diferentes secciones o temas.
EjemploJInternalFrame
?
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 import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
public class EjemploJInternalFrame extends JInternalFrame {
/* ÉSTE MAIN LO GENERA ECLIPSE PARA PRUEBAS, LO DEJO
* COMENTADO PORQUE YA ESTÁ FUNCIONANDO Y SE EJECUTARÁ
* DENTRO DE UN JDesktopPane COMO TODO BUEN JInternalFrame
* TAMBIÉN SE PUEDE EJECUTAR DENTRO DE OTROS PANELES
* PERO ESO NO SE SUELE UTILIZAR.
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
EjemploJInternalFrame frame = new EjemploJInternalFrame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}*/
// ÉSTE ES EL CONSTRUCTOR DE LA CLASE
public EjemploJInternalFrame() {
// coordenadas con las dimensiones de la ventana
setBounds(100, 100, 245, 134);
// disposición de capas a nulo para poder posicionar
// con coordenadas en vez de con el esquema determinado
getContentPane().setLayout(null);
// un etiqueta...
JLabel lblstoEsUna = new JLabel("\u00C9sto es una ventana interna...");
lblstoEsUna.setBounds(10, 11, 333, 14);
getContentPane().add(lblstoEsUna);
// el botón que cierra ésta ventana interna
JButton btnAprietaAquPara = new JButton("Aprieta aqu\u00ED para cerrar");
btnAprietaAquPara.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// ésto se ejecuta cuando se aprieta el botón
// manda la clase a la basura,
// con lo que se cierra la ventana
dispose();
}
});
btnAprietaAquPara.setBounds(10, 36, 209, 58);
getContentPane().add(btnAprietaAquPara);
}
}
502-HCD-2016 Proyecto de Comunicación: repavimentación varias calles del Muni...Brest Fabian Dario
El Honorable Concejo Deliberante de San Isidro solicita al Departamento Ejecutivo tenga a bien incluir en el Plan Municipal de pavimentación, repavimentación y/o bacheo a las calles:
- Corrientes en su intercepción con García Merou y Colectora Panamericana de la Localidad de Martínez.
- Santiago del Estero en su intercepción con Conscripto M. O. Romero de la localidad de Martínez.
EjemploJInternalFrame
?
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 import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
public class EjemploJInternalFrame extends JInternalFrame {
/* ÉSTE MAIN LO GENERA ECLIPSE PARA PRUEBAS, LO DEJO
* COMENTADO PORQUE YA ESTÁ FUNCIONANDO Y SE EJECUTARÁ
* DENTRO DE UN JDesktopPane COMO TODO BUEN JInternalFrame
* TAMBIÉN SE PUEDE EJECUTAR DENTRO DE OTROS PANELES
* PERO ESO NO SE SUELE UTILIZAR.
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
EjemploJInternalFrame frame = new EjemploJInternalFrame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}*/
// ÉSTE ES EL CONSTRUCTOR DE LA CLASE
public EjemploJInternalFrame() {
// coordenadas con las dimensiones de la ventana
setBounds(100, 100, 245, 134);
// disposición de capas a nulo para poder posicionar
// con coordenadas en vez de con el esquema determinado
getContentPane().setLayout(null);
// un etiqueta...
JLabel lblstoEsUna = new JLabel("\u00C9sto es una ventana interna...");
lblstoEsUna.setBounds(10, 11, 333, 14);
getContentPane().add(lblstoEsUna);
// el botón que cierra ésta ventana interna
JButton btnAprietaAquPara = new JButton("Aprieta aqu\u00ED para cerrar");
btnAprietaAquPara.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// ésto se ejecuta cuando se aprieta el botón
// manda la clase a la basura,
// con lo que se cierra la ventana
dispose();
}
});
btnAprietaAquPara.setBounds(10, 36, 209, 58);
getContentPane().add(btnAprietaAquPara);
}
}
502-HCD-2016 Proyecto de Comunicación: repavimentación varias calles del Muni...Brest Fabian Dario
El Honorable Concejo Deliberante de San Isidro solicita al Departamento Ejecutivo tenga a bien incluir en el Plan Municipal de pavimentación, repavimentación y/o bacheo a las calles:
- Corrientes en su intercepción con García Merou y Colectora Panamericana de la Localidad de Martínez.
- Santiago del Estero en su intercepción con Conscripto M. O. Romero de la localidad de Martínez.
2. El ActionScript es el lenguaje de
programación que ha utilizado Flash
desde sus comienzos, y que por
supuesto, emplea Flash CS5. A grandes
rasgos, podemos decir que el
ActionScript nos permitirá realizar con
Flash CS5 todo lo que nos propongamos,
ya que nos da el control absoluto de
todo lo que rodea a una película Flash
3. El ActionScript está basado en la especificación ECMA-262, al
igual que otros lenguajes como Java script.
ActionScript es, como su nombre indica, un lenguaje de script,
esto quiere decir que no hará falta crear un programa
completo para conseguir resultados, normalmente la aplicación
de fragmentos de código ActionScript a los objetos existentes
en nuestras películas nos permiten alcanzar nuestros objetivos.
ActionScript 3 es un lenguaje de programación orientado a
objetos. Tiene similitudes, por tanto, con lenguajes tales como
los usados en el Microsoft Visual Basic, en el Borland Delphi etc...
En la mayor parte de las ocasiones, será necesario "programar".
Flash CS5 pone a nuestra disposición una biblioteca de
funciones, clases y métodos (de momento entenderemos esto
como "código ActionScript que realiza una función
determinada") ya implementadas que realizan lo que
buscamos, bastará con colocarlas en el lugar adecuado.
4. alert()
La forma de tratar eventos, como on (event){}, onClipEvent(event){},
object.onEvent = function(){} , addListener , etc. La forma de tratarlos
ahora es agregando un escuchador al objeto, con el
método addEventListener, indicando el evento, y una única función de
escucha.
Guiones bajos ( _ ) antes del nombre de las propiedades.
Variables globales (_global).
_root y _parent para acceder a elementos superiores.
1 import flash.events.MouseEvent
2
3 miBoton.addEventListener(MouseEvent.CLICK, funcionAlHacerClick
4
5funcionAlHacerClick(event:MouseEvent):void
7 this.gotoAndPlay(15);
8}
5. Tenemos un único fotograma con 3
botones. En este fotograma tenemos
insertado el Código 1.
- Los 3 botones tienen distintas
funcionalidades:
- En el botón rojo, está insertado el Código
2
- En el botón azul, está insertado el Código
3
- En el botón verde, está insertado
el Código 4
6. En este tema veremos los puntos más
importantes en los que te podrás apoyar para
realizar tus animaciones en Flash
usando ActionScript.
Esta unidad, la de Navegación, está
especialmente orientada a la web, pues
veremos cómo crear elementos que te
ayudarán más tarde a crear tus propias
presentaciones, secciones, etc. Todo ello
apoyado con animaciones y vinculadas entre
sí.
A lo largo del tema utilizaremos este ejemplo
para ilustrar la teoría de forma guiada.
7. MouseEvent.CLICK: ejecuta la acción al hacer clic con el ratón..
MouseEvent.MOUSE_DOWN: ejecuta la acción al presionarse el botón.
MouseEvent.MOUSE_UP: ejecuta la acción al soltarse el botón
(después de haberlo presionado).
MouseEvent.MOUSE_OVER: ejecuta la acción al desplazar el cursor
dentro del botón
MouseEvent.MOUSE_OUT: ejecuta la acción al desplazar el cursor fuera
8. Flash permite el uso de escenas para separar diferentes temas en una sola película. Se suelen utilizar sobre todo en
animaciones, donde una parte de la acción transcurre sobre un fondo y la siguiente sobre otro completamente
diferente.
De este modo podemos usar las escenas para representar diferentes secciones muy diferentes en nuestra película,
por ejemplo, crear una escena para el cargador, otra para la película principal y una tercera para una sección
que se diferencie completamente del resto y nos sea más cómodo trabajar con ella independientemente.
A pesar del hecho de que las escenas se trabajan como líneas de tiempo diferentes, al crear el archivo SWF éstas
se alinean en orden reproduciéndose una detrás de otra.
Por ello, al publicar el documento los fotogramas de las escenas se numerarán respecto a esto. Es decir, si
tenemos una primera escena que va del fotograma 1 al 50, la segunda escena comenzará en el fotograma 51.