SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: albertovicat en Lunes 16 de Octubre de 2006, 17:59

Título: Campanazo Molesto
Publicado por: albertovicat en Lunes 16 de Octubre de 2006, 17:59
En los programas que hago solicito los datos de un artículo, un cliente, un proveedor, o lo que sea en una matrix de varios TextBox. En la KeyDown de ellos, si la tecla es Enter se verifica el tipo de datos según el Index y luego se pasa el foco al siguiente. Todo funciona bien, la pega es que al ocurrir esto se produce un campanazo bastante molesto. No encuentro forma de sacarle este sonido, salvo "a lo bruto" anulando el sonido en el sistema operativo, pero no puedo obligar a los clientes que me compran los programas a que hagan tal cosa en sus máquinas.
Seguramente alguien ha pasado por esto y sabe como hacer para sacarle este sonido.
Gracias.
Título: Re: Campanazo Molesto
Publicado por: shakka en Lunes 16 de Octubre de 2006, 18:11
Te refieres a una beep (pitido)?

Código: Text
  1. Private Sub Text1_KeyPress(KeyAscii As Integer)
  2.   If KeyAscii = 13 Then
  3.  
  4. Rem Para que no pite
  5.     KeyAscii = 0
  6.  
  7. Rem Si presiona la tecla "Enter", hace como si hubiese pulsado el tabulador,
  8. Rem y pasa el foco al sgte. control en funcion del Indice.
  9.     SendKeys "{tab}"
  10.  
  11.   End If
  12. End Sub
  13.  
Título: Re: Campanazo Molesto
Publicado por: albertovicat en Lunes 16 de Octubre de 2006, 23:08
Si... voy a probar eso. Yo le pongo KeyCode = 0 una vez hecha la verificación de que es 13. Pero no había probado usando KeyPress/KeyAscii en vez de KeyDown/KeyCode.
Pruebo y te cuento.
¡Gracias! :good:
Título: Re: Campanazo Molesto
Publicado por: albertovicat en Martes 17 de Octubre de 2006, 04:39
¡Grande shakka! :jumpie:
Funciona de maravillas.  :good: Lo único que no puedo verificar con KeyPress es el estado de Shift, pero bueno, el objetivo principal que era sacar el beep está logrado.
Quedaría por averiguarle a Bill si hay alguna otra manera. :whistling:
De nuevo gracias.
Saludos.
Título: Re: Campanazo Molesto
Publicado por: shakka en Martes 17 de Octubre de 2006, 09:03
Pues con KeyDown, como parece ser que lo estas haciendo.
Título: Re: Campanazo Molesto
Publicado por: sorrino en Sábado 21 de Octubre de 2006, 01:39
Private Sub Text1_KeyPress(KeyAscii As Integer)
   if keyascii= 13 then
      text2.setfocus
      keyascii=0
  end if
end sub

 <_<  creo que ese código tiene que funcionarte es que estoy en un cyber y no en casa si no anda decime y con respecto al resto seguiria funcionando normalmente

salu2