Clipper On Line • Ver Tópico - Passar parametro para um Metodo na chamada de um envento
Página 1 de 1

Passar parametro para um Metodo na chamada de um envento

MensagemEnviado: 17 Nov 2015 18:19
por andersoncamilo
Boa tarde,

Estou precisando passar alguns parâmetros na chamada de um evento.

Preciso abrir um formulário na chamada de desse evento, e nesse momento passar alguns parâmetros igual se faz com funções.

Exemplo função:


PesquisaDados(mensagem,arquivo)

Function PesquisaDados(pcMensagem,pcArqivo)
..
..
return nil



Agora gostaria da ajuda de como passar esses mesmos parâmetros no caso abaixo:


// No onClick  estou chamando o Método da seguinte forma:
{|| ::PesquisarRegistro('Pesquisa Clientes','CLIENTES') }

// No Método que é chamado estou fazendo da seguinte forma:

METHOD PesquisarRegistro( oSender, pcMensagem,pcArquivo ) CLASS TFrmClientes

   local cMensagem := pcMensagem
   local cArquivo     := pcArquivo
   TFormPesquisar():New(cMensagem, cArquivo):Show()

RETURN NIL



Da forma como estou fazendo não recebo os dados no formulário TFormPesquisar.

Agradeço se alguém puder ajudar

Anderson Camilo

Passar parametro para um Metodo na chamada de um envento

MensagemEnviado: 17 Nov 2015 19:31
por alxsts
Olá!

Tente assim:
#include "Hbclass.ch"

   CLASS TFrmClientes

      // variáveis visíveis somente dentro da classe
      PROTECTED:
      VAR cMensagem
     VAR cArquivo

     // variáveis visíveis de fora da classe
      EXPORTED:
      VAR iExported  INIT "Exported"

      METHOD PesquisarRegistro
   ENDCLASS
//----------------------------------------------------------------------------
METHOD PesquisarRegistro( oSender, pcMensagem,pcArquivo ) CLASS TFrmClientes

::cMensagem := pcMensagem
::cArquivo  := pcArquivo

TFormPesquisar():New(::cMensagem, ::cArquivo):Show()

RETURN NIL
//----------------------------------------------------------------------------

Passar parametro para um Metodo na chamada de um envento

MensagemEnviado: 28 Ago 2018 05:50
por Eric.Developer
simples, mas informe se ainda esta precisando, para eu sugerir a solução adequada.

andersoncamilo escreveu:Estou precisando passar alguns parâmetros na chamada de um evento.

Preciso abrir um formulário na chamada de desse evento, e nesse momento passar alguns parâmetros igual se faz com funções.


Uma observação sobre uma regra básica e útil do Xailer.
O método new (construtor) do Form, controles e outras classes, recebe apenas um argumento, um "objeto parent"
alxsts escreveu:
 TFormPesquisar():New(::cMensagem, ::cArquivo):Show()