Home > Foro de Lenguaje basic >

Debates de Lenguaje basic

> Validar cajas de texto en Visual Basic 6.0
Foro de Lenguaje basic
Foro de Lenguaje basic
1 Curso online | 813 Debates | 32 Documentos | 1 Vídeo | 1 Blog | 26 Imágenes | 1791 Miembros

validar cajas de texto en Visual Basic 6.0

Escrito por Adriana el 01/12/2007

Hola disculpen las molestas solo quiero saber si alguien sabe como puedo validar un caracter en una caja de texto, osea q si yo quiero q al momento de introducir el 1er caracter en esa caja sea una letra y asi sucesivamente. Osea q no permita q sea un numero u otra cosa. Por favor si alguien lo sabe q me ayude por favor es urgente gracias si quieren mandenm la respuesta a mi correo:luz_1327@hotmail. Com se los agradecere ok

compartir


Juanma Martinez
Valencia, España
Escrito por Juanma Martinez el 02/12/2007

Hola Adriana.

En VB es muy facil validar si una entrada es numérica, se comprueba el valor de la tecla pulsada (KeyAscii).

Ejemplo: Permitir solo valores numéricos

En la función KeyPress de la caja de texto

Private Sub Text1_KeyPress(KeyAscii As Integer)
     If IsNumeric(Text1. Text) = False Then
         KeyAscii=0    
      end if
end sub

Cada tecla contiene un valor KeyAscii o KeyCode, en este caso compruebas el valor de KeyAscii y si no es numérico le asignas el valor 0 y es como si no se hubiese pulsado.

Otra función muy util que utilizo en mis aplicaiones.

Con esta función evito en una caja que solo permite valores numéricos que se pueda escribir dos veces el símbolo decimal.

Function Contiene_Decimal(Cadena As String) As Boolean
Dim mCadena As String
Dim i As Integer
For i = 1 To Len(Cadena)
 mCadena = CStr(Mid$(Cadena, i, 1))
 If mCadena = "," Then
  Contiene_Decimal = True
  Exit Function
 End If
Next i
End Function

Y se aplica del siguiente modo:

Private Sub Text1_KeyPress(KeyAscii As Integer)
     if KeyAscii=44 then
         If Contiene_Decimal(Text1. Text) = True Then KeyAscii=0
         end if
end sub

Espero te sirva mi explicación y los ejemplos.

Atentamente, Juanma


Juanma Martinez
Valencia, España
Escrito por Juanma Martinez el 02/12/2007

Te pongo otro ejemplo de como validar cualquier caracter intruducido en un TextBox.

Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim vbConts As Integer

Select Case KeyAscii

Case Asc(0) To Asc(9)
 
Case Asc("a") To Asc("z")
 
Case Asc("A") To Asc("Z")
 
Case Asc("ñ")
 
Case Asc("Ñ")
 
Case 46     "//Tecla Punto
 
Case vbKeyBack    "// Valor 8 Tecla retroceso
 vbConts = vbKeyBack

Case 44    "//Tecla coma

Case 45     "//Tecla -
 
Case Else

End Select

End Sub

Puedes utilizar los valores numéricos(44,45,etc. ) como Constantes de códigos de tecla

Esto es una muestra, mira en la ayuda de VB.

Atentamente, Juanma.


Escrito por Camilo el 04/02/2008

doble clic en el text

pasa en declaraciones al evento keypress

" el codigo es:"

select case keyascii

case 68 to 90

case 97 to 122

case 8

case 32

case else

msgbox "solo letras"

keyascii=0

end select


Alexrafromero Romero Brito
Contaduría universidad de oriente
Escrito por Alexrafromero Romero Brito el 22/10/2008
Private Sub Text1_KeyPress(KeyAscii As Integer)
strValid = "QWERTYUIOPASDFGHJKLÑZXCVBNM" "Si quieres agregarle mas caracter tu lo decides
    KeyAscii = Asc(UCase(Chr(KeyAscii)))                    "Es lo mas sencillo y facil para cualquier otra cosa
    If KeyAscii > 26 Then                                                    " alexrafromero@hotmail. Com
        If InStr(strValid, Chr(KeyAscii)) = 0 Then
            KeyAscii = 0
        End If
    End If
    If KeyAscii = 13 Then
             KeyAscii = 0
    End If
End Sub

Alexrafromero Romero Brito
Contaduría universidad de oriente
Escrito por Alexrafromero Romero Brito el 22/10/2008
Private Sub Text1_KeyPress(KeyAscii As Integer)
strValid = "QWERTYUIOPASDFGHJKLÑZXCVBNM0 ,. ;:()123456789" elimina los caracteres que no quier
    KeyAscii = Asc(UCase(Chr(KeyAscii)))                   
    If KeyAscii > 26 Then                                                   
        If InStr(strValid, Chr(KeyAscii)) = 0 Then
            KeyAscii = 0
        End If
    End If
    If KeyAscii = 13 Then
             KeyAscii = 0
    End If
End Sub

Ejms_89 Mslllllll
Veracruz, México
Escrito por Ejms_89 Mslllllll el 13/01/2010

Por que con esto MsgBox "&text_color. Text&" lo que estas haciendo es que te imprima &text_color. Text& por que sta dentro de las comillas


Jose Palmeros
Ingeniero en desarrollo de software un...
Escrito por Jose Palmeros el 04/03/2010

/*

Bien antes que nada un saludo, necesito sabes que posibilidades o que me sugieren estoy haciendo un programa con VB6 y base de datos access 2003 y en uno de los campos no puedo dejar que se repitan los numeros, en este caso les dejo un ejemplo, el campo requiere de un numero de operacion generado por otro programa pero este no a su vez(en el formulario) que no permita que se repita el numero de operacion y en este caso al ingresarlo en la base de dato que notifique que ya existe, habra alguna manera de hacer eso en access o en VB?

*/

Se puede hacer de las dos formas, con Access en el campo que sea unico y en visual basic despues de introducir el texto hay que hacer una consulta a la base de datos y checar si ya existe


Jose Palmeros
Ingeniero en desarrollo de software un...
Escrito por Jose Palmeros el 04/03/2010

/*

Hola necesito ayuda ya que tengo que rediseñar mi proyecto(un sistema de inventario en vb6. 0) y me dijeron que use sstab con varias pestañas pero ya los formularios estan codificados y nose como mandarlos a llamar es que la mayoria de los controles tienen el mismo nombre. Ayudenme.

*/

Cambiales de nombre control por control


Jose Palmeros
Ingeniero en desarrollo de software un...
Escrito por Jose Palmeros el 04/03/2010

/*

Hola una consulta quiero saber por favor lo mas urgente como puedo ingresar en un textbox los numeros de 0 hasta el 20 es un rango

*/

En vez de text box usa un maskedit y donde lo encuentras pues buscalo en controles active X


Ejms_89 Mslllllll
Veracruz, México
Escrito por Ejms_89 Mslllllll el 29/05/2010

Para validar campos debes comparar lo que ingresas y lo que hay en la base de datos lo puedes hacer con un while y el next to
y claro la condicion if


Ejms_89 Mslllllll
Veracruz, México
Escrito por Ejms_89 Mslllllll el 29/05/2010

Para validar usuari y contraseña utiliza el if
if (usuario=""){
msgbox "llenar campos"
}else{
if(contraseña="")
{
msgbox "llenar campos"
}else{
//envia a la paguina que desees
}


Jose Palmeros
Ingeniero en desarrollo de software un...
Escrito por Jose Palmeros el 15/03/2011

/*

*/



No se aceptan ms preguntas aquí


Manuel Gómez
Francisco Morazan, H...
Escrito por Manuel Gómez el 05/06/2013



Responder


Quiero recibir alertas por email cuando haya mensajes nuevos en este debate

Debe cumplir las normas de contenido y normas de conducta
Al escribir en el debate:
  1. Repasa la ortografía y no escribas en formato SMS.
  2. Lee el texto dos veces antes de publicar.
  3. No escribas todo en mayúsculas o negritas.
 
Páginas internacionales: España  |  Italia  |  Francia  |  México  |  Alemania  |  Reino Unido  |  Argentina  |  Chile  |  Colombia  |  USA |  India |  Y próximamente: Brasil | 

Búsquedas frecuentes: tipos de memorando azitromicina y alcohol temario prueba de acceso a grado superior foro oncologia granitos en la lengua

EMAGISTER Servicios de formación, S.L. Copyright 1999/2013.