Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

VB.NET, eventos y controles

Estas en el tema de VB.NET, eventos y controles en el foro de Visual Basic clásico en Foros del Web. Muy buenas, tengo 2 preguntas: 1º Como llamo a un evento (tipo form_load()). En el vb 6 era simplemente form_load() y ya esta, pero ahora ...
  #1 (permalink)  
Antiguo 18/05/2005, 02:30
 
Fecha de Ingreso: abril-2005
Mensajes: 82
Antigüedad: 19 años
Puntos: 2
VB.NET, eventos y controles

Muy buenas, tengo 2 preguntas:

1º Como llamo a un evento (tipo form_load()). En el vb 6 era simplemente form_load() y ya esta, pero ahora me pide un argumento, una tal "e".

2º Hay alguna forma de controlar todos los controles (valga la redundancia) de un formulario??. Me explico, quiero vaciar todos los textbox de un formulario.

3º Otra cosa, yo me quiero crear una funcion para un grid que esta dentro de un formulario, en los parametros a pasar, que le pongo???? porque le pongo el formulario y no me lo pilla, si le pongo la libreria del grid tampoco. Asi que no se como referirme a ese grid de un formulario en una funcion.

Alguien me podria ayudar???? Graciaaaaaas

Última edición por erkillo; 18/05/2005 a las 03:34
  #2 (permalink)  
Antiguo 18/05/2005, 07:04
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
No te voy a dar una charla sobre .NET, pero te diré que no debes llamar nunca a funciones de eventos, es mala programación. Lo que debes de hacer es una función y que ésta sea llamada por Form_Load y por las demás funciones que quieres.

Mirando un poco en .NET (no suelo estar ), he mirado y puedes usar Me.Controls(i).algo para acceder a un control determinado de index i, y para saber cuántos Me.Controls.Count Tendrías que comprobar de que tipo es el control que te toca y hacer lo propio, pero con eso tienes una base.
  #3 (permalink)  
Antiguo 18/05/2005, 10:10
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Eje!!! que tal compañero... bueno le "e" es un dato de tipo System.EventArgs... en .NET tienes que enviarle al evento que quieras llamar el "e" producido por el evento en el que estes...

Para vaciar todos los textbox desde cualquier parte del codigo puedes poner:

this.textbox1.text=""

pero no te olvides de ponerle el .text ya que en vb6 se podia omitir la prodiedad text

Con respecto a lo ultimo no sabría decirte ya que programo en web... me imagino que tu en windows y es diferente.

Cualquier cosa mejor postea en el foro de .NET, alli mi pana Rootk que es el moderador te podrá ayudar mejor, el man es un duro en la plataforma .NET
  #4 (permalink)  
Antiguo 18/05/2005, 11:14
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Cita:
Iniciado por Developer9
Eje!!! que tal compañero... bueno le "e" es un dato de tipo System.EventArgs... en .NET tienes que enviarle al evento que quieras llamar el "e" producido por el evento en el que estes...

Para vaciar todos los textbox desde cualquier parte del codigo puedes poner:

this.textbox1.text=""

pero no te olvides de ponerle el .text ya que en vb6 se podia omitir la prodiedad text

Con respecto a lo ultimo no sabría decirte ya que programo en web... me imagino que tu en windows y es diferente.

Cualquier cosa mejor postea en el foro de .NET, alli mi pana Rootk que es el moderador te podrá ayudar mejor, el man es un duro en la plataforma .NET
Lo de "e" ya sabe que es porque lo ve en la implementación de cualquier evento.

this.textbox1.text="" que yo sepa no borra el contenido de todos los TextBox, además ya lo había respondido yo con la solución.
  #5 (permalink)  
Antiguo 18/05/2005, 11:38
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Ah claro compañero... es logico que solo borra un textbox... a lo que me referia es que a cada textbox le asigne a la propiedad text "" para que se borre el contenido de ese textbox, bueno vale la aclaración.

Lo que todos hacemos es hacer una funcion llamada limpia_textbox o algo asi en la que le asigne el "" todos los textbox... y asi llamarla desde donde se necesite limpiarlos.

  #6 (permalink)  
Antiguo 18/05/2005, 11:40
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Cita:
Iniciado por Developer9
Ah claro compañero... es logico que solo borra un textbox... a lo que me referia es que a cada textbox le asigne a la propiedad text "" para que se borre el contenido de ese textbox, bueno vale la aclaración.

Lo que todos hacemos es hacer una funcion llamada limpia_textbox o algo asi en la que le asigne el "" todos los textbox... y asi llamarla desde donde se necesite limpiarlos.

No, eso es una chapuza digna de VB6.

Como ya respondí, se debe hacer un bucle usando Me.Controls.Count para saber el total, Me.Controls[i] para acceder a cada uno y usar .Text, comprobando que el control que toca es un TextBox.

Así que controlas la plataforma .NET ¿eh? Ya veo cómo de experto eres ;)
  #7 (permalink)  
Antiguo 18/05/2005, 11:49
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Bueno programa como gustes... tambien funciona pero hay que tener cuidado ya que se puede complicar si tenemos un form con demasiados controles... pero bueno... tambien funciona
  #8 (permalink)  
Antiguo 18/05/2005, 13:23
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Cita:
Iniciado por Developer9
Bueno programa como gustes... tambien funciona pero hay que tener cuidado ya que se puede complicar si tenemos un form con demasiados controles... pero bueno... tambien funciona
¿?

Lo que se complica es tu manera, porque hay que actualizar a cada cambio.

La mía no, es para siempre. Lo de comprobar de que tipo es el control es automático... no hay que hacerlo uno por uno.
  #9 (permalink)  
Antiguo 18/05/2005, 13:31
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Cita:
Iniciado por MaxExtreme
Así que controlas la plataforma .NET ¿eh? Ya veo cómo de experto eres ;)
Adelante! Desenmascarando farsantes ...
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #10 (permalink)  
Antiguo 23/05/2005, 07:41
 
Fecha de Ingreso: mayo-2005
Mensajes: 2
Antigüedad: 19 años
Puntos: 0
'Define esta Subrutina en un Módulo
Public Sub Limpiar(ByVal Frm as Form)
dim x As Integer
for x= 0 to Frm.Controls(x).Count-1
If TypeOf Frm.Controls(x) Is TextBox then
Frm.Controls(x).Text=""
End If
Next x
End Sub

'Para Invocarla desde tu WindowsForm debes hacer:

Limpiar(Me)
'Eso es Todo... Espero que te Sirva.
  #11 (permalink)  
Antiguo 23/05/2005, 07:48
 
Fecha de Ingreso: mayo-2005
Mensajes: 2
Antigüedad: 19 años
Puntos: 0
El Parámetro "e" en VB.NET es muy Importante ya que ella representa la Instancia del Evento a Realizar, es decir; le Indica al Handle del Cotrol, el Evento y el Parametro que esa acción debe llevar para que se pueda realizar correctamente:
Por Ejemplo; si deseas invocar el Evento Click de Un Button:

Dim a as Object
Button1_Click(a,e)
'Es Similar que en Vb6.0, solo debes definir una Variable tipo Object, para indicar
'el primer parametro que solicita el evento(en este caso "a" va a representar al
'Button1), y posteriormente la "e" para indicar que ese Evento (Click) se aplica a este Control("a").
  #12 (permalink)  
Antiguo 23/05/2005, 07:56
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Cita:
Iniciado por Omar Vivas
'Define esta Subrutina en un Módulo
Public Sub Limpiar(ByVal Frm as Form)
dim x As Integer
for x= 0 to Frm.Controls(x).Count-1
If TypeOf Frm.Controls(x) Is TextBox then
Frm.Controls(x).Text=""
End If
Next x
End Sub

'Para Invocarla desde tu WindowsForm debes hacer:

Limpiar(Me)
'Eso es Todo... Espero que te Sirva.
Ya lo había contestado yo:

Cita:
Iniciado por MaxExtreme
Como ya respondí, se debe hacer un bucle usando Me.Controls.Count para saber el total, Me.Controls[i] para acceder a cada uno y usar .Text, comprobando que el control que toca es un TextBox.
...deja que lo implemente la persona que pregunta.
  #13 (permalink)  
Antiguo 20/10/2008, 05:21
 
Fecha de Ingreso: octubre-2008
Mensajes: 3
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: VB.NET, eventos y controles

MaxExtreme, eres DIOS, nadie sabe más que tú. Tus soluciones son inmejorables. Por si acaso no eres tan inteligente como crees, estoy siendo sarcástico...
  #14 (permalink)  
Antiguo 20/10/2008, 05:56
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: VB.NET, eventos y controles

Sarcastico y veloz
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #15 (permalink)  
Antiguo 22/10/2008, 00:31
 
Fecha de Ingreso: octubre-2008
Mensajes: 3
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: VB.NET, eventos y controles

Las cosas en palacio van despacio, Eternal Idol...
  #16 (permalink)  
Antiguo 22/10/2008, 01:05
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: VB.NET, eventos y controles

Esta claro, muchas gracias por el enorme aporte que estas haciendo en este hilo.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #17 (permalink)  
Antiguo 22/10/2008, 07:41
 
Fecha de Ingreso: octubre-2008
Mensajes: 3
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: VB.NET, eventos y controles

De nada Eternal Idol. Siempre a tu disposición
  #18 (permalink)  
Antiguo 27/12/2011, 15:21
 
Fecha de Ingreso: diciembre-2011
Mensajes: 2
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: VB.NET, eventos y controles

Amigos.
Me sale el ste error.
'Count' no es un miembro de 'System.Windows.Forms.Control'.

Me pueden ayudar.
Gracias
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 10:53.