Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 27-10-2004
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 23
defcon1_es Va por buen camino
Hola, para esto hay 2 soluciones (o más, pero no se me ocurren )

1) Crear un descendiente de la clase del componente que quieres y sobreescribir el método en cuestión.
Código Delphi [-]
type
  tMiClaseHija = class(TClase_Padre);
  ...
  protected
  ...
    procedure DoClick; override; 
  ...
  end;
Esto implica que, si quieres asignar el mismo código al evento OnClick de objetos de distintas clases (TBitBtn y TButton), debes implementarlo en los descendientes que te crees de esas clases...
Y si tienes que modificar el código de ese evento, debes hacerlo en todas las clases descendientes que hayas creado.

2) Crear un evento "genérico" con argumentos compatibles con el evento que deseas asignar, p.ej.:
Código Delphi [-]
procedure Mi_Manejador_de_EventoClick(Sender: TObject);
begin
....
// Código que se ejecutará cuando invoque el evento.
....
end;
 
procedure TForm1.FormShow(Sender: TObject);
begin
....
  MiBoton.OnClick := Mi_Manejador_de_Evento;
....
end;
Esta 2ª opción sirve para objetos de distintas clases, p. ej., para un TBitBtn y un TButton (ambos tienen el evento OnClick con el mismo argumento).
Y si tienes que modificar el código de ese evento, lo haces en un sólo sitio.

Depende de tus necesidades

Salu2.
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 22:41:42.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi