Máscara en un TextBox
Quisiera saber como crear una máscara en una caja de texto, en access le aplicaba la propiedad Máscara pero en Vb no la se aplicar. La máscara que quiero es -----/-- con números en los espacios. Gracias.
Otra solución (si no quieres el Masked Control) es capturar el valor de la tecla con el evento KeyPress del Textbox:
private sub TextBox1_KeyPress(ByVal KeyAscii as Integer)
select case chr(keyascii)
case "0","1","2","3","4","5","6","7","8","9"
keyascii = keyascii ' por poner algo
case else
keyascii = 0 'esto hace "perder" el caracter entrado
end select
end sub
En el evento KeyUp del TextBox puedes controlar si se ha llegado a la posición donde debe ir el "/", e insertarlo por código con la asignación:
KeyCode = Asc("/")
dentro del evento KeyUp.
Salud.
private sub TextBox1_KeyPress(ByVal KeyAscii as Integer)
select case chr(keyascii)
case "0","1","2","3","4","5","6","7","8","9"
keyascii = keyascii ' por poner algo
case else
keyascii = 0 'esto hace "perder" el caracter entrado
end select
end sub
En el evento KeyUp del TextBox puedes controlar si se ha llegado a la posición donde debe ir el "/", e insertarlo por código con la asignación:
KeyCode = Asc("/")
dentro del evento KeyUp.
Salud.
Utiliza el control Microsoft Masked Edit Control o si quieres utilizar el de access utiliza la libreria de controles Microsoft Forms 2
Utiliza la funcion format, ejemplo: en un txtBox introduces: 12/04/1963 y en el evento lostFocus, por ejemplo, le pones format(dd,mmmm,aaaa) (ojo!, no recuerdo si separa con comas o algo asi), el caso es que te queda al salir del textBox: 12 abril 1963. Y la máscara de access es una porquería da bastantes problemas. Para mas detalle pon format en la ayuda de VB
