Comunidad de diseño web y desarrollo en internet online

ayuda: Como emular teclado un de cel en actionScript 2?

Citar            
MensajeEscrito el 21 May 2009 03:02 pm
Buenas gente.. estoy queriendo escribir en un campo de texto dinámico con el tecládo numérico al igual que en un cel, que x ejemplo.. al apretar una vez el dos sale la "a", dos veces "b", etc.. sería como un doble click y trible click para las letras y un mantener para que salga el número.. si a alguien se le ocurre algo como para guiarme le agredecería pila pq la verdad que estoy medio perdido para arrancar.. espero q me puedan ayudar, gracias y saludos!

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 25 May 2009 05:04 pm
Hola,
te iba a haber puesto unos pasos generales con una idea de cómo hacerlo, pero al final me he liado y he hecho una pequeña clase para emular el teclado de un móvil. Aquí te dejo lo que se me ha ocurrido:

En una clase llamada "NumberKeyboard" pon lo siguiente:

Código :

import mx.utils.Delegate;

class NumberKeyboard {
   
   private var keyIsPressed:Boolean;
   private var oldKeyCode:Number;
   private var newKeyCode:Number;
   private var strokesCounter:Number = 0;
   
   private var oldTime:Number;
   private var newTime:Number;
   private var setCharTime:Number = 500; //Milisegundos para fijar definitivamente el caracter
   
   private var text_txt:TextField;
   
   public function NumberKeyboard(tf:TextField) {
      text_txt = tf;
      
      var keyListener:Object = new Object();
      keyListener.onKeyDown = Delegate.create(this, onKeyPress);
      keyListener.onKeyUp = Delegate.create(this, onKeyRelease);
      Key.addListener(keyListener);
   }
   private function onKeyPress():Void {
      if (keyIsPressed) return;
      keyIsPressed = true;
      
      var date:Date = new Date();
      newTime = date.getTime();
      newKeyCode = Key.getCode();
      
      //Tecla borrar:
      if (newKeyCode == 8) {
         deleteChar();
         return;
      }
      
      var elapsedTime:Number = newTime - oldTime;
      if ((elapsedTime < setCharTime) && (newKeyCode == oldKeyCode)) {
         strokesCounter++;
         deleteChar();
      } else {
         strokesCounter = 0;
      }
      text_txt.text += getChar(newKeyCode, strokesCounter);
      
      oldTime = newTime;
      oldKeyCode = newKeyCode;
   }
   private function onKeyRelease():Void {
      keyIsPressed = false;
   }
   private function deleteChar():Void {
      text_txt.text = text_txt.text.slice(0, -1);
   }
   private function getChar(keyCode:Number, strokes:Number):String {
      var charSet:String = "";
      switch (keyCode) {
         case 96: charSet = " 0"; break;
         case 97: charSet = ".,¿?¡!1"; break;
         case 98: charSet = "abc2"; break;
         case 99: charSet = "def3"; break;
         case 100: charSet = "ghi4"; break;
         case 101: charSet = "jkl5"; break;
         case 102: charSet = "mno6"; break;
         case 103: charSet = "pqrs7"; break;
         case 104: charSet = "tuv8"; break;
         case 105: charSet = "wxyz9"; break;
      }
      return charSet.charAt(strokes % charSet.length);
   }
}


y para usarla, sólo tienes que usar:

Código :

import NumberKeyboard;
var numberKeyboard:NumberKeyboard = new NumberKeyboard(this.tf_txt);

donde this.tf_txt es un textField dinámico.
Para escribir se usan los botones del teclado numérico y la tecla de borrar.
Espero que te sirva de ayuda.

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 25 May 2009 07:21 pm
muy bueno isidoro.. tu código me hace ver que tanto me falta aprender.. el mio son puros if.. el problema que tengo es que para borrar cualquier otra tecla que no sean los numeros borra... como podria hacer para que borrara solo el signo de menos por ejemplo? y se puede hacer que al dejar unos segundos presionada una tecla aparezca un numero?? x ejemplo si presiono un tiempo el 2 se borre la letra actual y salga el dos.. gracias de todas formas
!!

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 26 May 2009 03:23 pm
ya le asigné la tecla borrar y otros caracteres.. me falta hacer el holding.. que al dejar apretado la tecla aparece el numero.. lo estoy intentando pero si se te ocurre algo. gracias!

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 26 May 2009 05:30 pm
Tienes razón, el código de la clase NumberKeyboard está mal, y borra cualquier tecla aunque no sea la tecla de borrado. A ver si saco un ratillo y lo arreglo, y miro lo del holding.

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 26 May 2009 06:10 pm
Iba a haber editado el mensaje anterior para cambiar la clase, pero no he encontrado la forma, así que aquí te dejo la clase arreglada y con el holding. Quizá la función onKeyPress se pueda ordenar un poco más, pero ahora no tengo mucho tiempo, y tal y como está funciona :D

Código :

import mx.utils.Delegate;

class NumberKeyboard {
   
   private var keyIsPressed:Boolean;
   private var oldKeyCode:Number;
   private var newKeyCode:Number;
   private var strokesCounter:Number = 0;
   
   private var oldTime:Number;
   private var newTime:Number;
   private var setCharTime:Number = 500; //Milisegundos para fijar definitivamente el caracter
   private var holdCharTime:Number = 2000; //Milisegundos para el hold
   
   private var text_txt:TextField;
   
   public function NumberKeyboard(tf:TextField) {
      text_txt = tf;
      
      var keyListener:Object = new Object();
      keyListener.onKeyDown = Delegate.create(this, onKeyPress);
      keyListener.onKeyUp = Delegate.create(this, onKeyRelease);
      Key.addListener(keyListener);
   }
   private function onKeyPress():Void {
      newKeyCode = Key.getCode();
      
      if (keyIsPressed) {
         if ((newKeyCode == oldKeyCode) && (getTimePressed() > holdCharTime)) {
            deleteChar();
            text_txt.text += getHoldChar(newKeyCode);
         }
         return;
      }
      keyIsPressed = true;
      
      //Tecla borrar:
      if (newKeyCode == 109) {
         deleteChar();
         return;
      }
      
      newTime = getMS();
      var elapsedTime:Number = newTime - oldTime;
      if ((elapsedTime > setCharTime) || (newKeyCode != oldKeyCode)) {
         strokesCounter = 0;
      } else {
         strokesCounter++;
      }
      
      var charSet:String = getCharSet(newKeyCode);
      if (charSet == "") return;
      var char:String = charSet.charAt(strokesCounter % charSet.length);
      
      if ((elapsedTime < setCharTime) && (newKeyCode == oldKeyCode)) deleteChar();
      
      text_txt.text += char;
      
      oldTime = newTime;
      oldKeyCode = newKeyCode;
   }
   private function onKeyRelease():Void {
      keyIsPressed = false;
   }
   private function deleteChar():Void {
      text_txt.text = text_txt.text.slice(0, -1);
   }
   private function getMS():Number {
      var date:Date = new Date();
      return date.getTime();
   }
   private function getTimePressed():Number {
      return getMS() - newTime;
   }
   private function getCharSet(keyCode:Number):String {
      var charSet:String = "";
      switch (keyCode) {
         case 96: charSet = " 0"; break;
         case 97: charSet = ".,¿?¡!1"; break;
         case 98: charSet = "abc2"; break;
         case 99: charSet = "def3"; break;
         case 100: charSet = "ghi4"; break;
         case 101: charSet = "jkl5"; break;
         case 102: charSet = "mno6"; break;
         case 103: charSet = "pqrs7"; break;
         case 104: charSet = "tuv8"; break;
         case 105: charSet = "wxyz9"; break;
      }
      return charSet;
   }
   private function getHoldChar(keyCode:Number):String {
      var num:String = "";
      switch (keyCode) {
         case 96: num = "0"; break;
         case 97: num = "1"; break;
         case 98: num = "2"; break;
         case 99: num = "3"; break;
         case 100: num = "4"; break;
         case 101: num = "5"; break;
         case 102: num = "6"; break;
         case 103: num = "7"; break;
         case 104: num = "8"; break;
         case 105: num = "9"; break;
      }
      return num;
   }
}

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 26 May 2009 06:49 pm
y si! un capo isi! gracias! quedó bien de bien :wink:

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 27 May 2009 05:10 pm
Se puede guardar la clase en la biblioteca y llamarla igual q si estuviera externa?

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 27 May 2009 05:37 pm
¿Para qué?
Una vez que compilas el .fla la clase queda incorporada a tu swf.
Además una de las mejores cosas de la programación orientada a objetos es precisamente esto. Cuando creas una clase, puedes volver a reutilizarla en cualquier programa que hagas sin tener que volver a copiar las funciones en el .fla, y sin tener que preocuparte por recordar cómo funciona internamente. Simplemente la importas, creas una instancia de ella y la clase hace lo demás ella solita :).

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 27 May 2009 07:05 pm
ahh entoonces si ya queda incorporada no es necesario que esté en la misma carpeta ?
hey me gustaría llegar.. no sé si a tu nivel pero.. me gustaría orientar a objetos bien.. hay algun manual que me recomiendes?? pq los tutos de acá ya me los he leido

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 27 May 2009 07:40 pm
:D JAJAJA... Me parto... Llegar a mi nivel dice. Yo no soy programador ni mucho menos. Estudié económicas, y ahora estoy preparando una oposición de administrativo, por eso estos días puedo pasar más por este foro.
Esto de la informática es un hobby, pero vamos, que ni siquiera he diseñado nunca una página web (ni sabría cómo hacerlo).
Eso sí, yo aprendí actionscript con el archiconocido libro de Colin Moock, libro que te recomiendo encarecidamente.

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 28 May 2009 04:18 pm
Un grande! ya lo estoy buscando... al parecer no está en español.. o si?

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 28 May 2009 04:33 pm
Sí que está en español.
El que yo tengo se titula "ActionScript 2.0, soluciones para el desarrollo orientado a objetos", de O'Reilly, pero editado en castellano por Anaya multimedia. Aunque si te atreves a dar el salto a AS 3.0, el mismo autor ha sacado otro libro, y por lo que he oído de él es tan bueno como este.

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 28 May 2009 08:30 pm
bueno. me he pasado toda la tarde buscándolo cualquiera de los dos en español.. as2 y 3 pero nada.. si me lo puedes pasar te agradecería, sino tendré que comprarlos

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 29 May 2009 10:01 am
Yo tengo el libro "físicamente" en español, pero en el eMule lo puedes encotrar en formato pdf en inglés. Busca "Essential actionscript 2.0 Colin Moock" y te aparecerá.

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 05 Jun 2009 01:43 pm
Isi..yo de vuelta.. como estas?. de da noseque joderte pero tengo una duda que capaz q tus conocimientos la pueden resolver :wink: estoy queriendo hacer que.. con una tecla pueda cambiar de capo te texto.. vendría a ser un formulario que con una tecla cambio de campo y escribo con a clase.. pensé en una function que cambie de valor al presionar una tecla.. y en la function NumberKeyboard(tf:TextField) selecciono el campo de texto.. text_txt = tf+conterText; (por ejemplo) pero no se como usar el onSetFocus.. estoy leyendo los post de cristal pero no encuentro alguno q me ayude.. solo hablan de como hacer que desaparezca el texto te un campo al hacerle click.. bueno.. voy a seguir probando a ver que sale..

pd: me bajé dos libros de Colin Moock y unos cuantos tutos de poo.. en realidad.. oop pq están todos en inglés :( y no encaro una... voy a comprarlos en cuanto pueda pq pensé en traducirlos pero van a quedar cualquier cosa. Así que mejor gasto unos pesitos.. valen la pena :wink:

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 05 Jun 2009 03:13 pm
Se cambia de textField con el botón "+" del teclado numérico.
Clase NumberKeyboard:

Código :

import mx.utils.Delegate;

class NumberKeyboard {
   
   private var keyIsPressed:Boolean;
   private var oldKeyCode:Number;
   private var newKeyCode:Number;
   private var strokesCounter:Number = 0;
   
   private var oldTime:Number;
   private var newTime:Number;
   private var setCharTime:Number = 500; //Milisegundos para fijar definitivamente el caracter
   private var holdCharTime:Number = 2000; //Milisegundos para el hold
   
   private var textFields:Array;
   private var selected_txt:TextField;
   private var textIndex:Number;
   
   public function NumberKeyboard(tf:Array) {
      textFields = tf;
      textIndex = 0;
      selected_txt = tf[textIndex];
      
      var keyListener:Object = new Object();
      keyListener.onKeyDown = Delegate.create(this, onKeyPress);
      keyListener.onKeyUp = Delegate.create(this, onKeyRelease);
      Key.addListener(keyListener);
   }
   private function onKeyPress():Void {
      newKeyCode = Key.getCode();
      
      if (keyIsPressed) {
         if ((newKeyCode == oldKeyCode) && (getTimePressed() > holdCharTime)) {
            deleteChar();
            selected_txt.text += getHoldChar(newKeyCode);
         }
         return;
      }
      keyIsPressed = true;
      
      //Tecla cambio de textField (signo más teclado numérico):
      if (newKeyCode == 107) {
         textIndex++;
         textIndex %= textFields.length;
         selected_txt = textFields[textIndex];
      }
      
      //Tecla borrar (signo menos teclado numérico):
      if (newKeyCode == 109) {
         deleteChar();
         return;
      }
      
      newTime = getMS();
      var elapsedTime:Number = newTime - oldTime;
      if ((elapsedTime > setCharTime) || (newKeyCode != oldKeyCode)) {
         strokesCounter = 0;
      } else {
         strokesCounter++;
      }
      
      var charSet:String = getCharSet(newKeyCode);
      if (charSet == "") return;
      var char:String = charSet.charAt(strokesCounter % charSet.length);
      
      if ((elapsedTime < setCharTime) && (newKeyCode == oldKeyCode)) deleteChar();
      
      selected_txt.text += char;
      
      oldTime = newTime;
      oldKeyCode = newKeyCode;
   }
   private function onKeyRelease():Void {
      keyIsPressed = false;
   }
   private function deleteChar():Void {
      selected_txt.text = selected_txt.text.slice(0, -1);
   }
   private function getMS():Number {
      var date:Date = new Date();
      return date.getTime();
   }
   private function getTimePressed():Number {
      return getMS() - newTime;
   }
   private function getCharSet(keyCode:Number):String {
      var charSet:String = "";
      switch (keyCode) {
         case 96: charSet = " 0"; break;
         case 97: charSet = ".,¿?¡!1"; break;
         case 98: charSet = "abc2"; break;
         case 99: charSet = "def3"; break;
         case 100: charSet = "ghi4"; break;
         case 101: charSet = "jkl5"; break;
         case 102: charSet = "mno6"; break;
         case 103: charSet = "pqrs7"; break;
         case 104: charSet = "tuv8"; break;
         case 105: charSet = "wxyz9"; break;
      }
      return charSet;
   }
   private function getHoldChar(keyCode:Number):String {
      var num:String = "";
      switch (keyCode) {
         case 96: num = "0"; break;
         case 97: num = "1"; break;
         case 98: num = "2"; break;
         case 99: num = "3"; break;
         case 100: num = "4"; break;
         case 101: num = "5"; break;
         case 102: num = "6"; break;
         case 103: num = "7"; break;
         case 104: num = "8"; break;
         case 105: num = "9"; break;
      }
      return num;
   }
}

Ejemplo de uso (en el .fla):

Código :

import NumberKeyboard;
var txtFields:Array = new Array(tf1_txt, tf2_txt, tf3_txt, tf4_txt, tf5_txt, tf6_txt);
var numberKeyboard:NumberKeyboard = new NumberKeyboard(txtFields);

Ahora en lugar de pasarle un textField como parámetro, tienes que pasarle un array de textFields. En mi ejemplo he puesto 6, y los he puesto los nombres de instancia:tf1_txt, tf2_txt, tf3_txt, tf4_txt, tf5_txt, tf6_txt

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 05 Jun 2009 04:34 pm
:shock: :shock: estaba haciendo algo asi.. sabia q tenia q usar una Array. nose pq no lo hice :evil: .. gracias :oops:

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 05 Jun 2009 06:30 pm
che isi.. me resulta imposible hacer un --.. hice esto.

Código :

//Tecla tab-:
    if (newKeyCode == 36) {
         trace(textIndex)
       
       if(textIndex>-1){
       textIndex--;
         textIndex %= textFields.length;
         
       }else{
           
           textIndex = textFields.length-1;
       }selected_txt %= textFields[textIndex];
          
    }

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 05 Jun 2009 07:43 pm
No sé si leiste el post que puse antes, pero olvídalo. Hay ciertas teclas en flash que están reservadas, como por ejemplo la tecla TAB (cuyo código es 9, aunque puedes usar Key.TAB). Para poder usarlas, dentro del fla debes poner la siguiente línea:

Código ActionScript :

fscommand("trapallkeys", true);

Y para hacer que una tecla pase al textField anterior, pues te vas a encontrar con el problema de al hacer textIndex--, textIndex tomará valores negativos y no funcionará. Aquí te dejo una nueva clase:

Código ActionScript :

import mx.utils.Delegate;

class NumberKeyboard {
   
   private var keyIsPressed:Boolean;
   private var oldKeyCode:Number;
   private var newKeyCode:Number;
   private var strokesCounter:Number = 0;
   
   private var oldTime:Number;
   private var newTime:Number;
   private var setCharTime:Number = 500; //Milisegundos para fijar definitivamente el caracter
   private var holdCharTime:Number = 2000; //Milisegundos para el hold
   
   private var textFields:Array;
   private var selected_txt:TextField;
   private var textIndex:Number;
   
   public function NumberKeyboard(tf:Array) {
      textFields = tf;
      textIndex = 0;
      selected_txt = tf[textIndex];
      
      var keyListener:Object = new Object();
      keyListener.onKeyDown = Delegate.create(this, onKeyPress);
      keyListener.onKeyUp = Delegate.create(this, onKeyRelease);
      Key.addListener(keyListener);
   }
   private function onKeyPress():Void {
      newKeyCode = Key.getCode();
      trace(newKeyCode);
      if (keyIsPressed) {
         if ((newKeyCode == oldKeyCode) && (getTimePressed() > holdCharTime)) {
            deleteChar();
            selected_txt.text += getHoldChar(newKeyCode);
         }
         return;
      }
      keyIsPressed = true;
      
      //Tecla cambio de textField (signo + y * teclado numérico):
      if (newKeyCode == 107) ChangeTextField(1);
      if (newKeyCode == Key.TAB) ChangeTextField(-1);
      
      //Tecla borrar (signo menos teclado numérico):
      if (newKeyCode == 109) {
         deleteChar();
         return;
      }
      
      newTime = getMS();
      var elapsedTime:Number = newTime - oldTime;
      if ((elapsedTime > setCharTime) || (newKeyCode != oldKeyCode)) {
         strokesCounter = 0;
      } else {
         strokesCounter++;
      }
      
      var charSet:String = getCharSet(newKeyCode);
      if (charSet == "") return;
      var char:String = charSet.charAt(strokesCounter % charSet.length);
      
      if ((elapsedTime < setCharTime) && (newKeyCode == oldKeyCode)) deleteChar();
      
      selected_txt.text += char;
      
      oldTime = newTime;
      oldKeyCode = newKeyCode;
   }
   private function ChangeTextField(val:Number) {
      textIndex += val;
      textIndex %= textFields.length;
      if (textIndex < 0) textIndex += textFields.length;
      selected_txt = textFields[textIndex];
   }
   private function onKeyRelease():Void {
      keyIsPressed = false;
   }
   private function deleteChar():Void {
      selected_txt.text = selected_txt.text.slice(0, -1);
   }
   private function getMS():Number {
      var date:Date = new Date();
      return date.getTime();
   }
   private function getTimePressed():Number {
      return getMS() - newTime;
   }
   private function getCharSet(keyCode:Number):String {
      var charSet:String = "";
      switch (keyCode) {
         case 96: charSet = " 0"; break;
         case 97: charSet = ".,¿?¡!1"; break;
         case 98: charSet = "abc2"; break;
         case 99: charSet = "def3"; break;
         case 100: charSet = "ghi4"; break;
         case 101: charSet = "jkl5"; break;
         case 102: charSet = "mno6"; break;
         case 103: charSet = "pqrs7"; break;
         case 104: charSet = "tuv8"; break;
         case 105: charSet = "wxyz9"; break;
      }
      return charSet;
   }
   private function getHoldChar(keyCode:Number):String {
      var num:String = "";
      switch (keyCode) {
         case 96: num = "0"; break;
         case 97: num = "1"; break;
         case 98: num = "2"; break;
         case 99: num = "3"; break;
         case 100: num = "4"; break;
         case 101: num = "5"; break;
         case 102: num = "6"; break;
         case 103: num = "7"; break;
         case 104: num = "8"; break;
         case 105: num = "9"; break;
      }
      return num;
   }
}

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 11 Jun 2009 02:17 pm
hola perdón por la demora.. gracias me sirvió mucho.. creo q te mereces mi trabajo :D gracias!

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 11 Jun 2009 07:26 pm
a que te dedicas isi?

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 12 Jun 2009 06:51 am

Freeki escribió:

hola perdón por la demora.. gracias me sirvió mucho.. creo q te mereces mi trabajo :D gracias!

¡Qué bien! Pues a partir del lunes no hace falta que vuelvas al trabajo, que me quedo tu puesto xD

Freeki escribió:

a que te dedicas isi?

Pues ahora estoy en paro, y estudiando unas oposiciones (ahora que lo pienso, quizá debería dejar de pasarme por este foro y centrarme más en la Constitución Española...). Gracias por el interés :)

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 20 Dic 2009 03:58 pm
hola capo.. que tal? estaba leyendo de vuelta el post y recordando.. todavia no puedo creer lo perdido que estaba ^^ jeje

hace un tiempo me fuí hasta argentina a buscar esto..



en cuanto termine arranco con PaperVision 3D que me tiene re copado :love: jeje

vos todo bien??

bué, eso espero, un abrazo!

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 21 Dic 2009 09:51 pm
Hola de nuevo! Por aquí todo bien, gracias :). Me alegro de que al final hayas conseguido el libro en español.
Yo lo he leído hace unos meses, y a pesar de que la traducción tiene bastantes fallos el contenido no tiene desperdicio alguno (en especial la parte referente a la amplísima colección de eventos). Espero que le saques provecho y que te ayude en tu transición desde AS2 hasta AS3.

Un saludo y suerte!

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 Dic 2009 03:02 pm
si.. yo por ahora no he tenido problema con el idioma.. solo me molestó alguna que otra falta de ortografía... pero bueno, era de esperarse..
si, espero sacarle buen probecho jeje.. por ahora me está copando mucho.. quiero terminar ya ese zooVirgual :lol:
y espero q al terminarlo ya hallan sacado la version en español del essentials paperVision3d :wink:
la ansiedad me mata!

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox

 

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