Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Fernando_Almeida

[Resolvido] Erro ao arrastar objeto em swf externo

Recommended Posts

É o seguinte.

Este é um exemplo genérico mas, vamos supor que quero pintar e arrastar um retângulo que está em um swf externo.

 

1º: No Index criei um MovieClip , instanciei e deixei-o no palco na Layer 1.

2º: Criei uns botões e uma espécie de interface de comando na Layer 2.

Ex.: btn_swfExt1, btn_swfExt2, btn_preto, btn_azul, btn_verde, btn_vermelho.

 

3º: Na Layer 3 inseri estes códigos na action:

stop();
//Botão e código para chamar o swf externo:
btn_swfExt1.onRelease = function (){ 
       loadMovie ("externo.swf",_root.stage_falso);
};
//Este é o codigo que vai pintar o retângulo.
import flash.geom.ColorTransform;
import flash.geom.Transform;
var color_quadro:ColorTransform = new ColorTransform(_root.stage_falso.mc_quadro);
var trans_quadro:Transform = new Transform (_root.stage_falso.mc_quadro);
btn_preto.onPress = function() { 
color_quadro.rgb = 0x000000; // Quadro Preto
trans_quadro.colorTransform = color_quadro;
};
btn_azul.onPress = function() {
color_quadro.rgb = 0x0000FF; // Quadro Azul
trans_quadro.colorTransform = color_quadro;
};
btn_verde.onPress = function() {
color_quadro.rgb = 0x006600// Quadro Verde
trans_quadro.colorTransform = color_quadro;
};
btn_vermelho.onPress = function() {
color_quadro.rgb = 0xFF0000; // Quadro Vermelho
trans_quadro.colorTransform = color_quadro;
};

 

Até aqui o código funciona mas, o código para arrastar não funciona, estou usando o seguinte:

_root.stage_falso.mc_quadro.onPress = function() {
this.startDrag();
};
_root.stage_falso.mc_quadro.onRelease = function() {
this.stopDrag();
};

 

 

E então!?! Alguém tem uma dica??!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

É o seguinte.

Este é um exemplo genérico mas, vamos supor que quero pintar e arrastar um retângulo que está em um swf externo.

 

1º: No Index criei um MovieClip , instanciei e deixei-o no palco na Layer 1.

2º: Criei uns botões e uma espécie de interface de comando na Layer 2.

Ex.: btn_swfExt1, btn_swfExt2, btn_preto, btn_azul, btn_verde, btn_vermelho.

 

3º: Na Layer 3 inseri estes códigos na action:

stop();
//Botão e código para chamar o swf externo:
btn_swfExt1.onRelease = function (){ 
       loadMovie ("externo.swf",_root.stage_falso);
};
//Este é o codigo que vai pintar o retângulo.
import flash.geom.ColorTransform;
import flash.geom.Transform;
var color_quadro:ColorTransform = new ColorTransform(_root.stage_falso.mc_quadro);
var trans_quadro:Transform = new Transform (_root.stage_falso.mc_quadro);
btn_preto.onPress = function() { 
color_quadro.rgb = 0x000000; // Quadro Preto
trans_quadro.colorTransform = color_quadro;
};
btn_azul.onPress = function() {
color_quadro.rgb = 0x0000FF; // Quadro Azul
trans_quadro.colorTransform = color_quadro;
};
btn_verde.onPress = function() {
color_quadro.rgb = 0x006600// Quadro Verde
trans_quadro.colorTransform = color_quadro;
};
btn_vermelho.onPress = function() {
color_quadro.rgb = 0xFF0000; // Quadro Vermelho
trans_quadro.colorTransform = color_quadro;
};

 

Até aqui o código funciona mas, o código para arrastar não funciona, estou usando o seguinte:

_root.stage_falso.mc_quadro.onPress = function() {
this.startDrag();
};
_root.stage_falso.mc_quadro.onRelease = function() {
this.stopDrag();
};

 

 

E então!?! Alguém tem uma dica??!!

 

Esqueci de postar a solução :

//Adicionar 'true' em startDrag

 

_root.stage_falso.mc_quadro.onPress = function() {
this.startDrag(true);
};
_root.stage_falso.mc_quadro.onRelease = function() {
this.stopDrag();
};

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.