Comunidad de diseño web y desarrollo en internet online

Creación de componentes

Citar            
MensajeEscrito el 15 Oct 2004 07:27 am
Hola compis tengo una dudita, como puedo yo desde un moviclip crearme un componente?...podéis recomendarme algun tutorial o algo con ejemplo de creacion de nuestros propios componentes...

Gracias.

Por beita1979

7 de clabLevel



 

unknown
Citar            
MensajeEscrito el 15 Oct 2004 08:10 am
Googleando he encontrado esto:

http://www.person13.com/articles/components/creatingcomponents.html

Es de Joey Lott y tiene muy buena pinta, está en inglés por eso.

Un saludo!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

unknown
Citar            
MensajeEscrito el 15 Oct 2004 11:01 am
uffff podrias decirme alguno en castellano es que con el ingles no me manejo muy bien............

Por beita1979

7 de clabLevel



 

unknown
Citar            
MensajeEscrito el 15 Oct 2004 11:20 am
Tutorial de componentes de as1

hoy vamos ha aprender a crear nuestro primer componente , ya vereis q facil es .



Solo he creado un boton y q este cambien el tamanio de el scrollPane

Normalmente cuando hago un componente , lo q primero hago es mirar q quierro q haga ese componente , ya se q parece obvio , pero averiguar q metodos nesecitare mas adelante o en otro proyecto es un adelanto.

Las ventajas de un componente creo q esta claro , codigo mejor organizado , y cada vez q nesecite q mi componente tenga una nueva caracteristica , lo modifico , y poco a poco tienes un componente super util , sin liarte al copy/pege y si no lo modificas no tienes q leer el code.

Nuestro componente de hoy creo q tiene pocas posibilidades pero es lo suficientemente sencillo para asimilar el mecanismo de un componente.

Consiste en encapsular un code , meter en un cajon todo el code y sus metodos.

Crearemos una clase , el code basico es este :

Código :

#initclip
function MiClase() {
   //Aqui es la parte contructora de la clase
   //Aqui normalmente se inicia cosas q no nesecita parametros
}
// herredamos de MovieClip
MiClase.prototype = new MovieClip();
MiClase.prototype.metodo = function(parametros) {
   //Aqui nuestro metodo
   //Aqui manipulamos los parametros
}
// registramos la clase en la libreria 
Object.registerClass("MiComponenteSymbol", MiClase);
#endinitclip

Bueno expliquemos un poco el code:

#initclip y #endinitclip esto lo q hace es encapsular nuestro code (el cajon)
MiClase.prototype = new MovieClip() aqui queremos heredar todas las caracteristicas de la clase MovieClip
Object.registerClass("MiComponenteSymbol", MiClase) registramos nuestra clase , MiComponenteSymbol es el nombre de la vinculacion en la biblioteca y MiClase el nombre de nuestra clase.

Bueno empecemos nuestro primer componente.

-Nesecitamos tambien el scrollPane de flash mx , si solo teneis el 2004 , lo podeis bajar de la pagina de macromedia o tambien esta en el fla q esta en el final de este tuto , lo arrastrais en el escenario y lo borrais , con eso se añade a la biblioteca.

-Creamos un clip (control+f8) como nombre "window" aunq eso no tiene importancia y como identificador (vinculacion) "WindowSymbol" esto si es importante.

Y pegamos esto en la linea de tiempo de nuestro clip :

Código :

#initclip

//constructora de nuestra clase
//No admite parametros
function Windows() {
   //metemos el scrollPane en el clip
   this.attachMovie("FScrollPaneSymbol", "miscrollpane", 1);
   //hacemos q las barras sean siempre visibles
   this.miscrollpane.setHScroll(true);
   this.miscrollpane.setVScroll(true);
   //creamos un clip vacio q dibujaremos mas tarde el boton
   this.createEmptyMovieClip("btTr", 2);
}

//heredamos de MovieClip
Windows.prototype = new MovieClip();

Windows.prototype.inicio = function(quien,ancho, alto) {   
   if(ancho == undefined) ancho=300;
   if(alto == undefined)  alto=200;
   // definimos el contenido de el scrollpane
   this.miscrollpane.setScrollContent(quien);
   //definimos su tamaño
   this.tamanio(ancho,alto);
   //seleccionamos el boton
   with (this.btTr) {
      //dibujamos un triangulo
      beginFill(0xC0C0C0);
      lineStyle(2,0x808080)
      moveTo(-2,-12)
      lineTo (-12,-2);
      lineTo (-2,-2);
      endFill();
      //lo situamos a la derecha y abajo de el clip
      _x = ancho;_y = alto;
   }
   //cuando presionamos sobre el boton
   this.btTr.onPress = function() {
      //permitimos q se pueda arrastrar
      this.startDrag();
      //y disparamos el onEnterFrame
      this.onEnterFrame = function() {
         //Cuando la posicion de el boton es inferior a 60
         // 60 es +- el tamaño minimo de un scrollpane
         if (this._x<60) {
            //obligamos a soltar el boton
            this.onRelease();
            //y posicionamos el boton a 60
            this._x = 60;
         }
         //idem pero para _y
         if (this._y<60) {
            this.onRelease();
            this._y = 60;
         }
         //Redimensionamos nuestro scrollpane segun la posicion de el boton
         this._parent.tamanio(this._x,this._y);
      };
   };
   //cuando soltamos el boton
   this.btTr.onRelease = this.btTr.onReleaseOutside=function () {
      //dejamos de arrastrar el boton
      this.stopDrag();
      //eliminamos el onEnterFrame
      delete this.onEnterFrame;
      //volvemos a redimensionar por si las moscas
      this._parent.tamanio(this._x,this._y);
   };

};
//metodo q redimensiona el componente
Windows.prototype.tamanio = function(ancho, alto) {
   this.miscrollpane.setSize(ancho,alto);
};
//registramos la clase
Object.registerClass("WindowSymbol", Windows);
#endinitclip

Bien ya hemos acabado nuestro componente solo tienes q tener otro clip en la biblioteca , lo vincularemos con el nombre "contenido" y ponemos esto en la linea de tiempo de el escenario:

Código :

this.attachMovie("WindowSymbol", "miPrimerCompo", 1);
miPrimerCompo.inicio("contenido",300,200)

Ahora se deberia oir al tipico roñoso pero si esto no es componente ni es na , no tiene una interface de configuracion , como los componentes de verdad , bien yo doy un consejo: intente usar los componentes por programacion sus nervios se lo agradeceran.

Bien para los puristas lo vamos a convertir a componente "de verdad"

Selecionemos nuestro "componente" en la biblioteca y boton derecho->definicion de componente...

Y vamos añadiendo parametros hasta conseguir lo de la foto de abajo

bien ahora tenemos q modificar el code de antes para q pueda recibir los parametros de la interface , solo pegare el principio de el code para ahorar un poco de texto de este tuto.

Código :

#initclip
function Windows() {
   this.attachMovie("FScrollPaneSymbol", "miscrollpane", 1);
   this.miscrollpane.setHScroll(true);
   this.miscrollpane.setVScroll(true);
   this.createEmptyMovieClip("btTr", 2);
   //Aqui hacemos q se inicie solo
   this.inicio();
}
Windows.prototype = new MovieClip();
Windows.prototype.inicio = function(quien,ancho, alto) {
   //en caso q no existan parametros los recoje de la interface
   if(quien == undefined)quien=this.quien;
   if(ancho == undefined)ancho=this.ancho;
   if(alto == undefined)alto=this.alto;
   //a partir de aqui sigue como el code de antes


Bien el componente se podria adornar hasta la saciedad , crear un icono , colorear el code ("inicio") , q recogiera el ancho y alto segun su tamaño y un gran ect...

Yo personalmente paso de esas marico... , un componente ha nacido para estar metido dentro de otro y ser programado desde el exterior.


el fla : http://activicio.com/tuto/tuto7/windows.rar
salu2

Por buho29

510 de clabLevel

1 tutorial

7 ejemplos

 

unknown
Citar            
MensajeEscrito el 15 Oct 2004 02:48 pm
Bueno, pues ya tenemos el primer tuto de componentes made in buho29, un gran trabajo buho!!

:wink:

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

unknown
Citar            
MensajeEscrito el 15 Oct 2004 04:50 pm
me hizo recordar viejos tiempos (MALOS viejos tiempos) de codigo en los mc's....

Por _david

565 de clabLevel


1 articulo

Genero:Masculino  

Bogota, Colombia

unknown
Citar            
MensajeEscrito el 15 Oct 2004 05:19 pm
ufff, la epoca en la que el OOP de Flash era mas improvisado que hacer RIAs en ASP

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

unknown
Citar            
MensajeEscrito el 17 Oct 2004 01:01 am
ufff, la epoca en la que el OOP de Flash era mas improvisado que hacer RIAs en ASP


JAJAJJAAJAJAJAJAJAJA!!

PD: Chistes de informáticos, me parto XD

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

unknown
Citar            
MensajeEscrito el 07 Nov 2004 04:47 pm
:)

que tal hablando de componentes alguien podria decirme como

utilizar el combobox

es decir en ejecusion este coponente da varias opciones al usuario
y como puedo recuperar lo que se selecciona

please

[email protected]

Por roman6121

3 de clabLevel



 

unknown
Citar            
MensajeEscrito el 07 Nov 2004 07:19 pm
roman6121, lo apropiado seria que escribieras tu pregunta aparte en un nuevo tema del foro; pero si revisas la sección de tutoriales
http://www.cristalab.com/tutoriales.php
Encontraras el tutorial del ComboBox
http://www.cristalab.com/vertutorial.php?id=45

Saludos

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

unknown

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.