Comunidad de diseño web y desarrollo en internet online

Mover el cursor en un campo de introduccion de texto

Citar            
MensajeEscrito el 07 Ago 2005 02:53 pm
Quiero hacer un teclado tactil, para ello he creado todos los botones en la pelicula y cada vez que pulsas uno se escribe un nuevo caracter en un campo de introduccion de texto (podria haberlo hecho con textFields pero ahora mismo lo tengo asi) a lo kutre:

campo.text = campo.text + teclaPulsada;

El problema de esto es que el cursor se queda parpadeando al inicio del campo aunque insertes 2000 caracteres. Lo que quiero es que se posicione al final cada vez que se pulse una tecla; para ello e intentado:

campo.onSetFocus = function (){
Selection.setSelection(this.length, this.length);

y algun otro metodo pero no quiere funcionar.. ¿Alguna solucion?

Si creeis que se podria hacer de otra forma mas completa o facil se aceptan sugerencias ;) Lo malo de mi metodo es que el boton de borrar borra desde el final y no desde donde esta el cursor, ademas si uno en la pantalla tactil selecciona varios caracteres (como si lo seleccionas con el raton.. vamos) y pulsas el boton de borrar pues solo borra el ultimo caracter :roll:

En fin.. lo dicho.. ¿Alguna solucion?

PD:
Este es mi 1º post. Felizidades por la pagina, de lo mas completico ;)

Por uGe

5 de clabLevel



Genero:Masculino  

Murcianiko

msie
Citar            
MensajeEscrito el 20 Sep 2007 12:04 am
ya tiene algunos años esta pregunta, pero hoy presisamente tuve ese problema y busque respuesta... al no encontrarla investigue y lo resolví de esta manera.
Dentro de el un evento onPress en mi caso meti estas lineas y funciona bien, espero que les sirva

Código :

boton.onPress = function(){
 this.onEnterFrame = function(){
     Selection.setFocus("my_campo_texto");
     Selection.setSelection( my_campo_texto.length, my_campo_texto.length);
     delete this.onEnterFrame;
 } 
}


ya con esto, al presionar el botón se va al final del texto de ese campo, esto después de agregar un texto (en mi caso) se va al final de este (esto no lo incluyo)

Saludos

Por mando

9 de clabLevel



 

Mexico

firefox
Citar            
MensajeEscrito el 11 Jul 2008 04:36 am
estoy intentando ingresar un texto.. pero no borrarlo, es decir introducir un texto y si este tiene la respuesta correcta ir al siguiente cuadro de introduccion de texto.. pero ya mi boton tiene un codigo y necesito que si en el primer boton se ingresa la respuesta adecuada vaya direto al siguiente cuadro... mi codigo es este:

Código :

on (release, keyPress "<Enter>") {
   switch (prob1) {
      case "12 libros" :
      _root.score += 1;
      _root.intento += 1;
      resp1 = "Excelente";
      break
      default:
      resp1 = "Intentalo nuevamente";
      _root.mal += 1;
      _root.intento += 1;
      delete prob1;
   }
}

y lo que quiero hacer es que si prob1 se cumple vaya a prob2 y asi sucesivamente...

Por noentiendonada

92 de clabLevel



 

msie7
Citar            
MensajeEscrito el 13 Jul 2008 04:25 pm
Hola noentiendonada, pues mira por lo que explicas solo neceitas que el cursor se coloque en el sig. campo, verdad siempre y cuando sea correcta la respuesta?
pues lo que yo pondria seria dentro de tu codigo que posteas:


Código :

on (release, keyPress "<Enter>") {

   switch (prob1) {

      case "12 libros" :
      _root.score += 1;
      _root.intento += 1;
      resp1 = "Excelente";

     //-- Aqui el el foco a tu siguiente campo
      Selection.setFocus("prob2");

      break
      default:
      resp1 = "Intentalo nuevamente";
      _root.mal += 1;
      _root.intento += 1;
      delete prob1;
   }
}


La verdad no lo eh probado, pero por logica deveria de resultar.

Por mando

9 de clabLevel



 

Mexico

firefox
Citar            
MensajeEscrito el 17 Jul 2008 05:06 am
funciona muy bien mando muchas gracias y disculpa que no te haya contestado antes

Por noentiendonada

92 de clabLevel



 

msie7
Citar            
MensajeEscrito el 05 Nov 2009 08:32 pm
Para mover el cursor al final del cuadro de texto despues de haber agregado una letra, yo uso esto dentro de un boton (que podria ser, el cada caracter en el caso de un teclado virtual):

on (press) {
cajadetexto = cajadetexto+"a";
}
on (release) {
largo = length(cajadetexto);
Selection.setFocus("cajadetexto");
Selection.setSelection(largo,largo);
}


Lo pongo en eventos separados lo de agregar la letra y lo de mover el cursor, porque si pongo todo dentro del mismo evento (release) se mueve el cursor a la penultima posicion.

Así como está a mi me esta funcionando bien.

Por macromacro

2 de clabLevel



 

México

msie8

 

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