Pregunta: | 6319 - MOVER EL CURSOR DE TECLADO EN UN CUADRO DE TEXTO |
Autor: | Edgar Martínez |
Gracias de antemano a todos.
Tengo un problemilla, quiero mover el cursos de teclado(o sea la rallita que marca el desplazamiento de letras),a una posicion determinada dentro de un cuadro de texto. Por ejemplo que se muevo cinco letras a la derecha, que no este en el inicio. |
Respuesta: | Touring |
No sé si cuando abres el fomrulario, el cuadro de texto contiene ya una cadena o está vacío.
Puedes escribir este código para ejecutarlo al activar registro Private Sub Form_Current() [nombre de TextBox].Value = " " [nombre de TextBox].SetFocus [nombre de TextBox].SelStart = 5 End Sub Si el Textbox contiene algo al activar el registro puede saltarte la segunda línea |
Respuesta: | Jordi Moreno de Arcos |
Pues no se, a mi se me ocurren dos cosas, muy similares.
1º Con el evento gotfocus haces que si el valor del campo es null pase a ser de 5 espacios; más o menos sub campo_gotfocus() if isnull(campo) then campo.value=" " endif end sub 2º Si no quieres incluir espacios puedes incluir 'huecos' que es un codigo ASCII pero yo no me lo se. Para incluir ASCII se usa la función Chr(codigo_ascii) Si no quieres que te borren los espacios, no se como puedes hacerlo, lo que si que puedes es comprobar que una vez que se ha insertado el texto tenga 5 espacios al principio; algo asi como: sub campo_beforeUpdate() dim faltan as integer for i from 1 to 5 do if Mid(campo.value, i, 1) <> " " then ' esta función coge un caracter de la cadena cada vez faltan=faltan+1 end if next i 'ahora incluyes delante de la cadena tantos espacios como falten bien con otro bucle (for j from 1 to faltan) o con un case case (faltan=1) campo.value=" " & campo.value end sub Nota: No copies el código, no esta bien escrito solo se parece, y poco. Bueno, espero que te sirva. Un Saludo |