![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Cita:
Cuidado DEC !!! Punto a favor de hacerlo con la sugerencia de Roman.
__________________
[Crandel] |
|
#2
|
||||
|
||||
|
Cita:
// Saludos |
|
#3
|
|||
|
|||
|
Cita:
Saludos... |
|
#4
|
||||
|
||||
|
Hola,
Yo quisiera verlos en mi caso. He probado lo que me decís en vuestros últimos mensajes. He probado de varias formas. Comprendo que la solución que he logrado no parece la más efectiva o elegante, pero, hasta el momento es la única que funciona. Con todolo demás que he probado, y, repito, he probado, estoy probando y probaré, lo único que obtengo son errores de este jaez: Cita:
roman, confirmo que estaba demás la instrucción: Quisiera decir que esta frase no me ha caído muy bien: Cita:
Cita:
Cita:
|
|
#5
|
||||
|
||||
|
Cita:
Cita:
// Saludos |
|
#6
|
||||
|
||||
|
Hola,
Cita:
![]() Cita:
Por otro lado me estoy pegando con el método "InvokeEvent". Me gustaría utilizarlo, un poco irracionalmente, puesto que el componente, lo diré una vez más, funciona aparentemente bien. Encuentro este problema: Ahora mismo estoy actuando así en el evento que me interesa y es necesario:
Última edición por dec fecha: 03-11-2005 a las 21:50:17. Razón: Corrección del texto. |
|
#7
|
|||
|
|||
|
¿Cuál es la última versión de tu componente?, para que le eche un vistazo...
![]() |
|
#8
|
||||
|
||||
|
Cita:
// Saludos |
|
#9
|
||||
|
||||
|
Hola,
Cita:
Cita:
![]() |
|
#10
|
|||
|
|||
|
Bueno, aquí te subo una versión (que por falta de tiempo no compilé) modificada para que trabaje con un ActionList externo. Fíjate que en donde haces uso de FAcciones, primero verifico que esté asignado antes de usarlo.
También comenté las lineas donde creas y destruyes FAcciones, ya que tu componente no debería hacerlo. Cualquier duda o comentario, será hasta mañana que te conteste... ![]() Saludos... |
|
#11
|
||||
|
||||
|
¡Hola a todos!
Vaya hilo. Se mezcló lo del TActionList con lo de agregar comportamiento relacionado con un evento a una clase descendiente. Me resultó un poco difícil leerlo, porque las muestras de código tienen líneas demasiado largas para una resolución de 800X600. Dec: Te aconsejo que optes por la recomendación de Román respecto al método virtual InvokeEvent. Verás, la óptica es esta: Si existe un método virtual que llama directa o indirectamente a un manejador de evento, lo mejor es tratar de redefinir ese método y agregar ahí la nueva funcionalidad relacionada con el evento. Si por alguna razón (técnica o lógica) prefieres redefinir la propiedad evento, ten en cuenta lo siguiente: 1. No necesitas usar Load. 2. Puedes redeclarar la propiedad evento en la nueva clase y con el mismo nombre para ocultar la propiedad padre ante el inspector de objetos, guardando la nueva propiedad en un nuevo campo. 3. Desde el método que asignes internamente a la propiedad oculta puedes llamar al nuevo evento. 4. Si la propiedad original no está definida con métodos de acceso virtuales, tu componente tendrá el riesgo que señala Andrés, al hacer referencias polimórficas (se operará sobre la propiedad padre, no la nueva). Espero esto sea de utilidad. Un abrazo orientado a objetos. Al González. ![]() Última edición por Al González fecha: 31-01-2010 a las 05:23:23. Razón: Era InvokeEvent, no Invoke. :) |
|
#12
|
||||
|
||||
|
...Con respecto al uso abreviado de Inherited, hace algún tiempo que lo desacostumbré porque imposibilita usar la opción Find Declaration para ir rápidamente al código del método heredado.
Un abrazo complementario. Al González. ![]() |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|