Fórum Criação de componentes #256195
27/10/2004
0
Bem estou tentando criar um componente esdado da classe TClientDataSet e nele estava tentando fazer uma modificação no evento beforeopen.
protected
{ Protected declarations }
procedure BeforeOpen(DataSet: TDataSet);override;
fiz esta declaração programei todo o evento quando fui compilar me foi exibida a mensagem.
Methodo ´BeforeOpen´ not found in Base Class.
Bem eu sei que este metodo é nativo da classe TDataSet mas isso siguinifica que eu não poderia modifica-lo deste meu componente ... para fazer isto o que eu teria de fazer?
:?: Como capturar o metodo before open num clientdataset?
Mitsalito
Curtir tópico
+ 0Posts
27/10/2004
Afarias
Neste caso vc pode sobrescrever o método protegido DoBeforeOpen (responsável pela chamada do Evento) q originalmente nada mas é que::
procedure TDataSet.DoBeforeOpen; begin if Assigned(FBeforeOpen) then FBeforeOpen(Self); end;
desta feita vc pode fazer::
protected
procedure DoBeforeOpen;override;
{...}e então re-implementar o método como desejar::
procedure TClasseTal.DoBeforeOpen;
begin
{...}
inherited;
{...}
end;T+
Gostei + 0
27/10/2004
Alexandresbo2
Gostei + 0
27/10/2004
Mitsalito
obrigadão.
Valeulll..... :P
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)