Programación General > C++ Builder

 Cambiar Funcionalidad Ontimer Dinámicamente

(1/2) > >>

Ithilien:
Hola, llevo atascado un par de días con el siguiente problema:

Tengo que implementar, para un conjunto de TTimers que creo dinámicamente, una función OnTimer diferente. El caso es que he probado a crear una función e intentar asignársela, pero no acepta parámetros y al hacer
--- Código: Text ---Timer[i]->OnTimer = (TNotiryEvent) &NuevoOnTimer(cadena); , con "cadena" como char *, da error de tipos. El error que da concretamente es el siguiente:

--- Código: Text ---[C++ Error] Supervisor.cpp(65): E2109 Not an allowed type Por lo tanto, no sé como hacerlo. Si alguien lo sabe, lo agradecería muchísimo.

Enko:
Esto te deberia servir.
http://www.angelzeitoune.com.ar/cpp/eventos.html

Por sierto, tienes una falta de letra, Es TNotifyEvent, no TNotiryEvent  (en el casing).

Ithilien:
perfect! me sirve!!!! Muchísimas gracias. Tu también tienes una falta  :lol: : es casting, no casing  :whistling:

Ithilien:
Hola de nuevo Enko. He estado mirando eso bien, y trabajando me di cuenta de que realmente no sirve esto, no? Lo digo porque estamos definiendo eventos para una clase ( en el ejemplo ) potencia, que construimos nosotros. Lo que ocurre es que yo uso los TTimers que ya estan definidos, y que, tienen su evento OnTimer que es del tipo TNotifyEvent, que solo acepta un parámetro que es el Sender. Y necesito pasarle otro parámetro, entiendes?

¿Se puede solucionar el problema? gracias!

Enko:
Lo que ocurre es que no vas a poder pasarle otro parametro que no sea el Sender. Es así como funciona la VCL.
Lo que podes hacer es usar una variable global, o bien, una variable miembro de TForm1.


--- Citar ---casting, no casing

--- Fin de la cita ---
Si, tenia esa duda, no me acordaba bien el nombre y dudé entre las dos. Me decidí por la que estaba mal.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa