Jump to content


Foxn

Member Since 18/01/2003
Offline Last Active 08/05/2012, 08:21
-----

#203171 Conhecendo Um Pouco Do Action Script 2

Posted by Foxn on 07/10/2003, 00:10

Como o espaço é curto e tempo mais ainda :D vamos direto ao assunto e preparar o terreno para o AS2. Pois bem, eu criei uma pasta para chamada flash_2004, dentro dela eu tenho um simples arquivo teste.fla em branco, então tendo-se isso vamos criar uma classe, vá em File>>New>>Geral>>ActionScript File. Vamos começar criando uma classe chamada "Registro":

1 class Registro {
2  
3 }

Agora muito importante o arquivo da classe tem de ter o mesmo nome de sua classe por isso salve agora esse arquivo como Registro.as na pasta flash_2004. Feito isso vamos fazer a função construtora que será executada no momento que essa classe for usada para gerar um objeto.

1 class Registro {
2  function Registro(){
3 	 trace("A classe está funcionando");
4  }
5 }

Agora vamos ao nosso arquivo teste.fla e colocamos esse código em seu primeiro frame:

// declara nome:tipo da classe 
var novo:Registro;
// Gerando um novo objeto
novo = new Registro();

Teste seu filme e se aparecer "A classe está funcionando" em sua janela de saida então sua classe já está funcionando, mas como pode estar funcionado se eu não defini para ela ser importade em nenum lugar? Simples vá em Edit>>Preferences>>ActionScript>>Action Script 2.0 Settings... e pronto como você pode ver ele possue dois itens, o primeiro informa que todas as classes da pasta de classes do flash serão carregadas para dentro do seu swf e a segunda linha diz que
todas as classes que estiverem na mesma pasta quando seu swf foi gerado serão "imcorporadas" ao seu swf e é por isso que você não precisou colocar nada para imcorpora-la ao seu swf. Caso você queira definir outras pastas com classes para ser incorporadas em todos os seus swfs pode defini-las ai, caso queira definir apenas psrs aquele swf em particular vá em File>>Publish Settings>>Flash>>Settings...
Agora que sabemos por que funcionou vamos voltar ao nosso arquivo Registro.as, mas agora vamos colocar alguns dados:

1 class Registro {
2  // Delarando algumas propriedades
3  var nome:String;
4  var sobrenome:String;
5	var idade:Number;
6	// Função contrutora
7	function Registro($nome:String,$sobrenome:String,$idade:Number){
8  nome = $nome;
9  sobrenome = $sobrenome;
10  idade = $idade;
11	}
12  }

Agora salve o arquivo e voltemos ao teste.fla, onde agora podemaos passar alguns argumentos para a nossa classe:

// declara nome:tipo da classe 
var novo:Registro;
// Gerando um novo objeto
novo = new Registro("Paulo","Marques",25);

Pronto, agora temos um objeto com 3 simples propriedades, de um Ctrl+V para ver as propriedades. Importante lembrar que como definimos os tipos de dados das propriedades elas não aceitarão valores diferentes dos especificados, mesmo numerico não aceitará numeros entre aspas, o que ele considera como uma string e não um número. Mas e agora, é uma simples classe mas e se você quiser definir uma nova propriedade somente para esse objeto? Algo assim:

// declara nome:tipo da classe 
var novo:Registro;
// Gerando um novo objeto
novo = new Registro("Paulo","Marques",25);
novo.cidade = "São Paulo"

Mas infelizmente isso vai dar erro, pois nossa classe permite que você altere os valores das propriedade de nosso objeto mas não permite adicionar novas propriedades a cada objeto individualmente, mas isso é uma coisa que podemos resolver rapidamente, vamos ao Registro.as e mudamos somente a sua primeira linha, ficara assim:

1 dynamic class Registro {

Pronto agora que adicionamos o dynamic você pode voltar ao teste.fla e testá-lo sem prblemas. E é isso ai uma simples classe com o action script 2, e ainda há muito mais a ser visto. Caso você queira saber como seria feita essa mesma classe no Flash MX, coloque no seu primeiro frame e teste:

_global.Registro = function($nome,$sobrenome,$idade){
	this.nome = $nome;
	this.sobrenome = $sobrenome;
	this.idade  = $idade;
}
novo = new Registro("Paulo","Marques",25);
novo.cidade = "São Paulo";

Claro que no Flash MX 2004 temos muitos mais recurso dos quais não podemos contar no Flash MX que é um conceito bem melhor para se desenvolver classes.

E é isso ai fui.

[]'s


#139493 Efeito Elastico

Posted by Foxn on 08/07/2003, 08:04

Vc já tem um arquio fla com o exemplo é só usar ele.

[]'s


IPB Skin By Virteq