felipe govoni wrote: > bah to meio perdido fiz o que vc falou joao > mas agora da o seguinte erro inconpatible type: 'method pointer and regular > procedure'
Então, você tem que declarar Pintar como um _método_, ou seja, dentro de uma classe (TForm, TDataModule, por aí): procedure TSeuDataModule.Pintar(...); Depois você associa este método ao evento, sem usar o abre-fecha parênteses. -- Joao Morais > > 2008/6/9 Joao Morais <[EMAIL PROTECTED]>: > >> felipe govoni wrote: >>> blz mas agora da o seguinte erro: >>> unsatisfied foward or external declaration Tfrmmonitorar.pintar >> É para alterar o cabeçalho do seu método Pintar, não é para declarar >> outro cabeçalho sem implementação. >> >> - declare Pintar dentro de uma classe (ou seja, um método, e não uma >> procedure); >> - coloque o parâmetro Dataset, como eu citei anteriormente. A declaração >> deste método deve ser igual ao que o evento OnCalcFields espera; >> - associe este método ao evento OnCalcFields sem colocar o abre-fecha >> parênteses. >> >> -- >> Joao Morais >> >>> 2008/6/9 Joao Morais <[EMAIL PROTECTED] <post%40joaomorais.com.br> >>> : >>> >>>> felipe govoni wrote: >>>>> procedure pintar(Sender: TObject); >>>>> begin >>>>> //codigo pra pintar >>>>> end; >>>>> >>>>> e no evento on click >>>>> >>>>> dmGeral.qryBaixa.close; >>>>> dmGeral.qryBaixa.OnCalcFields := pintar(); >>>>> dmGeral.qryBaixa.open; >>>>> >>>>> ele da o seguinte erro: not enough actual parameters, mas qual >> parametro >>>>> falta colocar? >>>> declare: >>>> >>>> procedure Pintar(Dataset: TDataset); >>>> ... >>>> >>>> e retire os parênteses da procedure ao fazer a associação: >>>> ... >>>> dmGeral.qryBaixa.OnCalcFields := Pintar; >>>> ... >>>> >>>> Joao Morais >>>> >>>> >>> >>> >> >> > > >