• Viernes 15 de Noviembre de 2024, 06:48

Autor Tema:  Callbyname  (Leído 2280 veces)

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Callbyname
« en: Miércoles 29 de Diciembre de 2004, 17:44 »
0
hola foreros, encontre esta pregunta, en una comunidad, y no entiendo a que se refiere, si alguien que ha usado el VB6.0, me explica que es lo quiere el pata....

Citar
Lo ke pasa es ke necesito ejecutar algunos métodos de una clase en runtime es decir los nombres los tengo en una tabla y lo que kiero es llamar a dichos métodos a partir de dicho string. En VB 6 existía el CallByName el cual también en Net existe pero yo kiero utilizar las librerías propias de Net es por ello que deseo saber si existe algunas forma de hacer ello, estuve investigando y vi ke es algo con Reflection pero si alguien me puede dar una ayuda se lo agradecería.


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

Soultaker

  • Miembro HIPER activo
  • ****
  • Mensajes: 972
  • Nacionalidad: pe
    • Ver Perfil
Re: Callbyname
« Respuesta #1 en: Miércoles 29 de Diciembre de 2004, 22:19 »
0
Bueno lo que yo entiendo es que el pata lo que quiere hacer es que digamos me creo un formulario con infinidad de procedimientos, pero lo que me parece que quiere es que esos procedimientos osea los nombres esten en una tabla y al estar en la tabla serian de tipo string, por lo tanto el pata quiere jalar el nombre del procedimiento desde la tabla y que ese procedimiento se ejecute dependiendo del nombre que se haya elegido de la tabla. Bueno eso es lo que entendi.

Bueno esto seria algo parecido a lo que una vez hice una pregunta parecida en este foro (que por cierto hasta ahora no me responden :D )  Ejecutar codigo en variables  :hola:

Bueno eso me parece que es lo que quiere el patita. Por cierto si hayan la solucion tambien publiquenlo por aqui.

 :comp:
http]
foros,programacion, c, c++, java,
linux, videojuegos, directX, .NET,
visual basic,robotica,microprocesadores

Para los nuevos usuarios de este Foro, por favor leerse esta discusión.
Cómo Hacer Preguntas De Forma Inteligente

Ojos que no ven... pisan caquita
Camarón que se duerme... muere electrocutado


<<< Harol Moreyra Bendezú >>>

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Callbyname
« Respuesta #2 en: Jueves 30 de Diciembre de 2004, 18:14 »
0
hola gentita, el pata ya encontro solucion, pero hasta ahora no entiendo que es lo que queria aca les mando las discusión para la chekeen:

CallByName


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

Soultaker

  • Miembro HIPER activo
  • ****
  • Mensajes: 972
  • Nacionalidad: pe
    • Ver Perfil
Re: Callbyname
« Respuesta #3 en: Viernes 31 de Diciembre de 2004, 03:43 »
0
Miren lo que yo entiendo es esto, espero no estar equivocado y si lo estoy corrijanme.

Código: Text
  1. ' Lo primero que hace es crear una clase (Class1)
  2. Dim i As Int32
  3.  
  4. ' Aqui declara MiClase del tipo de Class1
  5. Dim MiClase As Type = GetType(Class1) 'Obtienes el tipo
  6.  
  7. ' Luego aqui declara MyMethod del tipo de un Metodo
  8. Dim MyMethod As Reflection.MethodInfo ' Obtienes el metodo
  9.  
  10. ' Bueno el For ya saben para que es
  11. For i = 0 To Me.lstDestino.Items.Count - 1
  12.   ' Aqui a la variable MyMethod le esta almacenando el nombre del metodo
  13.   ' de acuerdo a la posición que se encuentre en el ListBox
  14.   MyMethod = MiClase.GetMethod(Me.lstDestino.Items(i))
  15.   ' Bueno y aqui esta ejecutando el metodo que se encuentra en la
  16.   ' variable MyMethod
  17.   MyMethod.Invoke(Nothing, Nothing) 'Llamas al metodo
  18. Next
  19.  

Lo de la tabla que queria jalar los nombres, lo que entiendo es que en la tabla ingresa todos los nombres de los métodos de la clase (Class1), luego esos nombres lo ingresa al ListBox y ahi de acuerdo al orden que este se va ejecutnado método por método.

Bueno eso es lo que entendí.

Saludos y Feliz Año. Bye  :hola:

 :comp:
http]
foros,programacion, c, c++, java,
linux, videojuegos, directX, .NET,
visual basic,robotica,microprocesadores

Para los nuevos usuarios de este Foro, por favor leerse esta discusión.
Cómo Hacer Preguntas De Forma Inteligente

Ojos que no ven... pisan caquita
Camarón que se duerme... muere electrocutado


<<< Harol Moreyra Bendezú >>>

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Callbyname
« Respuesta #4 en: Viernes 31 de Diciembre de 2004, 12:41 »
0
ah, parece que voy entendiendo es como Poliformismo de metodos no..?


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

Soultaker

  • Miembro HIPER activo
  • ****
  • Mensajes: 972
  • Nacionalidad: pe
    • Ver Perfil
Re: Callbyname
« Respuesta #5 en: Viernes 31 de Diciembre de 2004, 21:21 »
0
Si pues es algo asi como el Poliformismo.

 :comp:
http]
foros,programacion, c, c++, java,
linux, videojuegos, directX, .NET,
visual basic,robotica,microprocesadores

Para los nuevos usuarios de este Foro, por favor leerse esta discusión.
Cómo Hacer Preguntas De Forma Inteligente

Ojos que no ven... pisan caquita
Camarón que se duerme... muere electrocutado


<<< Harol Moreyra Bendezú >>>