Foros del Web » Programación para mayores de 30 ;) » .NET »

escribir un textbox en cualquier parte del form

Estas en el tema de escribir un textbox en cualquier parte del form en el foro de .NET en Foros del Web. Tengo este formulario: Hay un solo textbox en el form, quiero que cualquier pulsación numérica en cualquier parte del form se escriba en el textbox ...
  #1 (permalink)  
Antiguo 25/08/2012, 08:35
 
Fecha de Ingreso: mayo-2012
Ubicación: Argentina, Buenos Aires
Mensajes: 28
Antigüedad: 12 años
Puntos: 1
escribir un textbox en cualquier parte del form

Tengo este formulario:



Hay un solo textbox en el form, quiero que cualquier pulsación numérica en cualquier parte del form se escriba en el textbox ya que el programa es para usarlo con una lectora de códigos de barra y lo único que hace este hardware es enviar pulsaciones de teclado... alguna idea de como hacerlo? Todavía no pude encontrar información sobre esto...

Gracias.
  #2 (permalink)  
Antiguo 25/08/2012, 09:43
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: escribir un textbox en cualquier parte del form

Hola nelsonpk, puedes hacerlo de la siguiente manera... primero crea el siguiente método :
Código vb:
Ver original
  1. 'Donde la variable caja es el nombre del TextBox
  2. Private Sub ordenamiento(ByVal e As System.Windows.Forms.KeyPressEventArgs)
  3.         If Char.IsDigit(e.KeyChar) Then
  4.             caja.Focus()
  5.             caja.Text = caja.Text & e.KeyChar
  6.         Else
  7.             e.Handled = True
  8.         End If
  9.     End Sub

Ahora una vez que tienes ese metodo, te vas a los eventos KEYPRESS de tu grilla, botones y Form y colocas lo siguiente :
Código vb:
Ver original
  1. 'Invocamos al método ordenamiento
  2. ordenamiento(e)
Finalmente en el evento KEYPRESS de tu textbox coloca lo siguiente :
Código vb:
Ver original
  1. If Char.IsDigit(e.KeyChar) Then
  2.             caja.Select(caja.Text.Length, 0)
  3.             e.Handled = False
  4.         ElseIf e.KeyChar = Convert.ToChar(Keys.Enter) Then
  5.             'Como se sabe los lectores de barra al final mandan un {ENTER}
  6.            'por eso una vez que lo envía aqui se haces la función que deseas realizar
  7.        Else
  8.             e.Handled = True
  9.  
  10.         End If
La variable caja es el nombre que le asigne al textbox, que obviamente tendría que ir el nombre que tú le hayas asignado. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #3 (permalink)  
Antiguo 25/08/2012, 19:53
 
Fecha de Ingreso: mayo-2012
Ubicación: Argentina, Buenos Aires
Mensajes: 28
Antigüedad: 12 años
Puntos: 1
Respuesta: escribir un textbox en cualquier parte del form

Gracias por la ayuda. Lo probé y todo lo que escribo me aparece doble... y no podes borrar lo que se escribe.
  #4 (permalink)  
Antiguo 27/08/2012, 08:12
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: escribir un textbox en cualquier parte del form

Hola nelsonpk, se me hace raro... lo he probado y no me sucede lo que comentas... Te paso el link del archivo para que lo compruebes. Saludos!.
pulsacion de numeros a focus textbox
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Última edición por Aquaventus; 27/08/2012 a las 08:19
  #5 (permalink)  
Antiguo 27/08/2012, 19:51
 
Fecha de Ingreso: mayo-2012
Ubicación: Argentina, Buenos Aires
Mensajes: 28
Antigüedad: 12 años
Puntos: 1
Respuesta: escribir un textbox en cualquier parte del form

Si, tal cual decís el tuyo funciona. Cambiaste alguna propiedad del form o algo? Mañana lo veo en detalle aver si copié algo mal gracias.

Y como puedo hacer para que se pueda usar la tecla de borrado? Ya que a veces es necesario ingresar los códigos manualmente.

Saludos.
  #6 (permalink)  
Antiguo 28/08/2012, 07:09
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: escribir un textbox en cualquier parte del form

Hola nelsonpk, no eh cambiado ninguna propiedad, solo lo que ves en código. Saludos!.
PDT : Te coloco el ejemplo actualizado habilitando el BACKSPACE :
Pulsación de numeros a textbox
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Última edición por Aquaventus; 28/08/2012 a las 07:47 Razón: Incrustando ejemplo
  #7 (permalink)  
Antiguo 08/09/2012, 13:31
 
Fecha de Ingreso: mayo-2012
Ubicación: Argentina, Buenos Aires
Mensajes: 28
Antigüedad: 12 años
Puntos: 1
Respuesta: escribir un textbox en cualquier parte del form

La verdad no se que puede ser... acá dejo el formulario completo...
http://pastebin.com/KyuTzCWj

Aparecen dos numeros y si el cursor está sobre el textbox aparecen 3
  #8 (permalink)  
Antiguo 28/08/2013, 17:59
 
Fecha de Ingreso: agosto-2013
Mensajes: 3
Antigüedad: 10 años, 8 meses
Puntos: 0
Respuesta: escribir un textbox en cualquier parte del form

Cómo lo solucionaste ?

Etiquetas: net, parte, textbox, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:12.