Textbox para fecha

T?
21 de Noviembre del 2003
Como hago para tener un textbox en el que por defecto me aparezca "__/__/____" y poder introducir la fecha. O como hacer que en un DATATIMEPICKER se pueda pasar del dia al mes y al año sin tener que pinchar expresamente en uno de ellos, sino que a medida que vas escribiendo te pase de uno a otro.

Gracias.

Baltasar
21 de Noviembre del 2003
si te fijas, al introducir los datos en un datapicker, basta con pulsar la barra "/" para pasar de un campo a otro.

Una idea que te propongo (que a mis clientes les gusta): en un textbox les pido la fecha, que han de introducir con el formato ddmmyyyy, sin separadores, y también les permito escribir sólo el día o el día y el mes (eso sí, suponiendo que se trata del año y del mes en curso), siendo yo mediante código el que rellena el resto, y le pongo los separadores. Eso les encanta, ya que se ahorra mucho tiempo y errores de tecleado.

Saludos

Jose Moure Moure
21 de Noviembre del 2003
Bueno yo en vez de Textbox utilizaria un MaskEdBox,le puedes poner el formato que deseas en la propiedad format en este caso sería dd/mm/yyyy despues solo tendrias que dejar introducir numeros seria de la siguiente forma:
Private sub MaskEdBox1_Keypress(keyascii as integer)
If InStr("0123456789", Chr(keyascii)) = 0 Then keyascii = 0
end sub

Espero que te sea util

T?
21 de Noviembre del 2003
No encuentro el MaskEdBox para el VB.NET

Jose Moure Moure
21 de Noviembre del 2003
Esta ubicado en el siguiente sitio en la barra de herramintas del Visual en proyecto/componentes y ahi buscas el Microsoft Masked Edit control 6.0(SP3).Espero que tengas suerte

Jose Moure Moure
21 de Noviembre del 2003
Lo has encontrado!

carlydt
21 de Noviembre del 2003
proba con el MaskEdBox

LUCAS
21 de Noviembre del 2003
yo lo que hago es inserto componente el mscalendar o algo asi, ya no me acuerdo, una vez que tengas el componente lo metes en el formulario , ahora tienes un calendar1, le pones visible a false.

entonces pones esto de codigo:
en el form_load pon calendar1.value = date

Private Sub Text1_Click(Index As Integer)
Calendar1.Visible = True
Calendar1.SetFocus
End Sub
' pon el calendar encima del text asi no pueden escribir en el, solo pinchar en una fecha.
Private Sub Calendar1_Click()
text1.text = calendar1.value
text2.setfocus
' pasas el foco a otro text
calendar1.visible= false
end sub
'
'aqui si pulsa escape no insertas nada
'
Private Sub Calendar1_KeyPress(KeyAscii As Integer)
If KeyAscii = 27 Then
Text1 = ""
Text2.SetFocus
Calendar1.Visible = False
End If
End Sub

espero que te sirva, para validar luego la fecha haz:
if isdate(text1.text) then
' lo que quieras
else
msgbox "Formato de fecha erronea",vbcritical,"ERROR"
end if