Evento do ClientDataset
Tenho um ClientDataset que esta em um datamodule, tem como eu usar o evento afterscroll dele mas em um outro formulario ?
Abs
Felipe Ip
Curtidas 0
Respostas
Pjrm1470
18/03/2010
Não tem como não.
Uma maneira mais simples de se usar seria utilizar o evento DataChange do DataSource. Acredito que o seu dts (Datasource) esteja no "outro" formulário. Mas tome cuidado com isso, pois ele funciona como AfterScroll, mas tambem é executado caso você altere alguma informação. É um tratamento muito trabalhoso.
Explique sua situação. Assim posso lhe dar um suporte mais detalhado.
pjrm1470.
Uma maneira mais simples de se usar seria utilizar o evento DataChange do DataSource. Acredito que o seu dts (Datasource) esteja no "outro" formulário. Mas tome cuidado com isso, pois ele funciona como AfterScroll, mas tambem é executado caso você altere alguma informação. É um tratamento muito trabalhoso.
Explique sua situação. Assim posso lhe dar um suporte mais detalhado.
pjrm1470.
GOSTEI 0
Thiago Santana
18/03/2010
Felipe vc pode incluir um datasource na tela em que vc quer utilizar o evento AfterScroll e conecte o mesmo a tabela referente no seu DM.
Aí vc irá utilizar no evento do datasource da sua tela e não do Dm. Espero ter ajudado!
AbraçoO
Aí vc irá utilizar no evento do datasource da sua tela e não do Dm. Espero ter ajudado!
AbraçoO
GOSTEI 0
Pjrm1470
18/03/2010
ThiaGo Darlei Santana Souza,
Bem lembrado. Erro meu. Tem como sim.
lembrando que você cria a procedure respeitando o tipo de parametro que a propriedade aceita. Neste caso é:
Basta criar uma procedure assim:
E por fim no clientDataSet a sua procedure criada aparecerá para ser selecionada no evento OnAfterScroll, assim como em outros eventos (mas você quer que ela seje para o afterScroll).
Sendo em outro form... coloque "OutroForm.SuaProcedure" no evento.
Agradeço a Thiago por me corrigir.
Qualquer dúvida, da o grito.
Att,
pjrm1470.
Bem lembrado. Erro meu. Tem como sim.
lembrando que você cria a procedure respeitando o tipo de parametro que a propriedade aceita. Neste caso é:
procedure(DataSet: TDataSet) of object;
Basta criar uma procedure assim:
type TForm1 = class(TForm) ClientDataSet1: TClientDataSet; procedure SuaProcedure(Dataset: TDataSet); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} { TForm1 } procedure TForm1.SuaProcedure(Dataset: TDataSet); begin end; end.
E por fim no clientDataSet a sua procedure criada aparecerá para ser selecionada no evento OnAfterScroll, assim como em outros eventos (mas você quer que ela seje para o afterScroll).
Sendo em outro form... coloque "OutroForm.SuaProcedure" no evento.
Agradeço a Thiago por me corrigir.
Qualquer dúvida, da o grito.
Att,
pjrm1470.
GOSTEI 0
Thiago Santana
18/03/2010
Falow PJRM1470 ....
Sem problemas!
Estamos aki para compartilhar conhecimentos...
GOSTEI 0