elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  [Pregunta] (C#) ¿Qué significan las variables 'e' y 'sender'?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta] (C#) ¿Qué significan las variables 'e' y 'sender'?  (Leído 6,961 veces)
Zodiak98

Desconectado Desconectado

Mensajes: 120


Ver Perfil
[Pregunta] (C#) ¿Qué significan las variables 'e' y 'sender'?
« en: 13 Julio 2013, 03:52 am »

Bueno al empezar a codear un objeto o la forma o x cosa siempre te colocan 2 variables por default qué son 'e' y 'sender'. Pero la verdad no sé para qué son, alguien me explica?

1 - ¿Qué son exactamente?
2 - ¿De qué servirían?

Saludos.


En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [Pregunta] (C#) ¿Qué significan las variables 'e' y 'sender'?
« Respuesta #1 en: 13 Julio 2013, 04:18 am »

El sender es quién disparó el evento, por ejemplo, si utilizas un mismo método a para el evento click de muchos botones diferentes, tal vez te interesa dentro de ese método identificar al botón que disparó el click.

El e es para los argumentos que reciba ese método.

Saludos


En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.866



Ver Perfil
Re: [Pregunta] (C#) ¿Qué significan las variables 'e' y 'sender'?
« Respuesta #2 en: 13 Julio 2013, 05:13 am »

Para añadir algo de información a la respuesta de Novlucker he hecho un ejemplo práctico:

EDITO: Justo ahora leí que era para C#, sorry, pero igual te puede servir.

Código
  1. Public Class Form1
  2.  
  3.    ' Creamos dos objetos de tipo {Button} con algunas propiedades :
  4.  
  5.    Dim WithEvents objeto1 As Button = New Button _
  6.    With {.Name = "Boton1", _
  7.          .AutoSize = True, _
  8.          .Tag = "Botoncito 1", _
  9.          .Text = "Soy el botón 1, púlsame!", _
  10.          .Font = New Font("Microsoft Sans Serif", 16, FontStyle.Bold), _
  11.          .Dock = DockStyle.Top}
  12.  
  13.    Dim WithEvents objeto2 As Button = New Button _
  14.    With {.Name = "Boton2", _
  15.          .AutoSize = True, _
  16.          .Tag = "Botoncito 2", _
  17.          .Text = "Soy el botón 2, púlsame!", _
  18.          .Font = New Font("Microsoft Sans Serif", 16, FontStyle.Bold), _
  19.          .Dock = DockStyle.Bottom}
  20.  
  21.    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  22.        ' Asociamos un {evento} de los objetos a un {eventhandler} :
  23.        AddHandler objeto1.MouseDown, AddressOf objeto_Click
  24.        AddHandler objeto2.MouseDown, AddressOf objeto_Click
  25.        ' Añadimos los controles al formulario :
  26.        Me.Controls.Add(objeto1) : Me.Controls.Add(objeto2)
  27.    End Sub
  28.  
  29.    Private Sub objeto_Click(sender As Object, e As MouseEventArgs) ' Handles objeto1.MouseDown, objeto2.MouseDown
  30.  
  31.        ' El objeto que recibe el sender es de tipo {Button}, el sender equivale a uno de nuestros botones :
  32.  
  33.        MsgBox(String.Format("Name: {0}Tag: {1}Text: {2}", _
  34.                             sender.Name & Environment.NewLine, _
  35.                             sender.tag & Environment.NewLine, _
  36.                             sender.Text & Environment.NewLine))
  37.  
  38.        ' Pero en algunos casos querremos convertir el sender al tipo de objeto en cuestión,
  39.        ' por ejemplo en este caso para diferenciar entre un botón y otro :
  40.  
  41.        Dim Boton As Button = CType(sender, Button)
  42.  
  43.        Select Case Boton.Name
  44.            Case "Boton1" ' El botón se llama "Boton1"
  45.                MsgBox("Esto sucede al pulsar el botón: " & Boton.Name)
  46.                ' Código...
  47.            Case "Boton2" ' El botón se llama "Boton2"
  48.                MsgBox("Esto otro sucede al pulsar el botón: " & Boton.Name)
  49.                ' Más código...
  50.        End Select
  51.  
  52.        ' Una muestra de como manejar {e} para el tipo de evento {MouseEventArgs} :
  53.        MsgBox("Pulsaste el botón de tu mouse: " & e.Button.ToString)
  54.  
  55.    End Sub
  56.  
  57. End Class

Saludos.
« Última modificación: 13 Julio 2013, 05:37 am por EleKtro H@cker » En línea



Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
SMS SENDER
Programación Visual Basic
Dark Spirit 4 2,173 Último mensaje 29 Noviembre 2006, 17:03 pm
por Magic_Key
[Pregunta]Declaraciones de variables DIM
Programación Visual Basic
TinchoHack 1 2,595 Último mensaje 23 Abril 2011, 20:34 pm
por Edu
[masm][pregunta]problema con variables « 1 2 »
ASM
daryo 16 8,258 Último mensaje 5 Agosto 2014, 11:28 am
por Eternal Idol
Atomic mail sender
Software
huerto123 1 2,648 Último mensaje 20 Noviembre 2021, 23:54 pm
por Machacador
[Pregunta]: Problemas con variables e intervalos.
Desarrollo Web
Leguim 0 2,993 Último mensaje 28 Julio 2022, 23:00 pm
por Leguim
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines