Comunidad de diseño web y desarrollo en internet online

Problema con SWF incrustado en Flex

Citar            
MensajeEscrito el 21 Jun 2008 02:36 am
Hola a todos, la verdad es que llevo bastante tiempo en esto y no he podido solucionarlo:

Tengo un flash que lo unico que hace es dibujar con el mouse, un ActionScript simple, el asunto es que yo quiero incrustar este flash en flex para poder hacer una aplicacion mas grande con una pizarra, y al incrustar este swf, provoca que se pueda dibujar en tooooodo el mxml, cosa que yo no quiero que ocurra sino solo en el lugar en donde incruste el swf............¿alguien sabe por que pasa? y si es que se puede solucionar el asunto......

Por rramirezdoc

3 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 Jun 2008 07:25 am
provaste con darle un alto y ancho al SWFLoader.. al parecer como no le diste un ancho y alto te toma el 100% que por defecto viene.

Por phoxer

Claber

827 de clabLevel

4 tutoriales

Genero:Masculino  

Ing en Sistemas

opera
Citar            
MensajeEscrito el 21 Jun 2008 06:46 pm

phoxer escribió:

provaste con darle un alto y ancho al SWFLoader.. al parecer como no le diste un ancho y alto te toma el 100% que por defecto viene.


si, esta con alto y ancho definido por mi en el codigo, y aun asi pasa lo mismo....

Por rramirezdoc

3 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 Jun 2008 07:40 pm
mm lo que yo hice una vez para un banner que simulaba un pizzaron delimite el area de dibujo
mediante codigo. te explico. si vos estas moviendo el pindo de linea actual con un evento
asi sea enterFrame o mouseMove, tenes que poner dentro de la funcion que te dibuja
que solo lo haga dentro de unas coordenadas ,.. por ejemplo que dibuje cuando el mouseX sea
mayor que 10 y menor que 200 y asi con la Y tambien. entendes?
entonses solo se ejecutara el escript si el mousex esta mayor que 10 y menor que 200..

yo por lo menos lo hago asi. :wink:
espero que te funcione.. saludos.

Por phoxer

Claber

827 de clabLevel

4 tutoriales

Genero:Masculino  

Ing en Sistemas

opera
Citar            
MensajeEscrito el 21 Jun 2008 08:41 pm

phoxer escribió:

mm lo que yo hice una vez para un banner que simulaba un pizzaron delimite el area de dibujo
mediante codigo. te explico. si vos estas moviendo el pindo de linea actual con un evento
asi sea enterFrame o mouseMove, tenes que poner dentro de la funcion que te dibuja
que solo lo haga dentro de unas coordenadas ,.. por ejemplo que dibuje cuando el mouseX sea
mayor que 10 y menor que 200 y asi con la Y tambien. entendes?
entonses solo se ejecutara el escript si el mousex esta mayor que 10 y menor que 200..

yo por lo menos lo hago asi. :wink:
espero que te funcione.. saludos.


Hola, mira tengo este codigo hecho en flash:

Código :

var colorlinea = "0x000000"
var grosorlinea = 2
 
function Lapiz( ) {
         this.moveTo(_xmouse, _ymouse);

         this.onMouseMove = function( ) {
                  this.lineStyle(grosorlinea, colorlinea, 100);
                  this.lineTo(_xmouse, _ymouse);
                  updateAfterEvent( );
         };

         this.onMouseUp = function( ) {
                  delete this.onMouseMove;
         };
  }
 
this.createEmptyMovieClip("Dibujar", this.getNextHighestDepth( ));

Dibujar.onMouseDown = Lapiz;


Mi idea era pasar este codigo para usarlo en flex, pero nunca me resulto, asi que lo use en flash y despues incrustarlo en flex.

Lo que tu dices entonces es que en la parte donde estoy dibujando...

Código :

this.moveTo(_xmouse, _ymouse);

         this.onMouseMove = function( ) {
                  this.lineStyle(grosorlinea, colorlinea, 100);
                  this.lineTo(_xmouse, _ymouse);
                  updateAfterEvent( );


ahi colocar una condicion de tipo 'if then' ???

Por rramirezdoc

3 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 Jun 2008 09:06 pm
sip puedes haer algo asi

Código :

var minX:Number=50;
var maxX:Number=200;
var minY:Number=50;
var maxY:Number=200;
this.onMouseMove = function( ) {
      if(_xmouse>minX && _xmouse<maxX && _ymouse>minY && _ymouse<maxY){
           this.lineStyle(grosorlinea, colorlinea, 100);
           this.lineTo(_xmouse, _ymouse);
           updateAfterEvent( );
      }
};


tene en cuenta que lo que estas usando es ActionScript 2 y flex utiliza AS3 quizas pasando el codigo a as3 y usando los componentes de flash si te ande..

Por phoxer

Claber

827 de clabLevel

4 tutoriales

Genero:Masculino  

Ing en Sistemas

opera
Citar            
MensajeEscrito el 22 Jun 2008 12:32 pm
Muchas Gracias por la ayuda....y claro, mi idea principal era pasar esto a ActionScript 3.0 para usarlo directamente en flex, por que mi idea es que esta pizarra se ocupe sobre un control de imagen en flex......para dibujar sobre ella, pero nunca logre pasar ese codigo a as 3.0, asi que opte por la opcion de hacerlo con el swfloader.......

Por rramirezdoc

3 de clabLevel



Genero:Masculino  

firefox

 

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