Ayuda con esta clase

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Ruben Dario
Usuário Nível 3
Usuário Nível 3
Mensagens: 127
Registrado em: 14 Jun 2015 23:19
Localização: Colombia

Ayuda con esta clase

Mensagem por Ruben Dario »

Saludos al forum

Segun este Ejemplo de dicho codigo , lo tome de los ejemplos de harbour. Using Harbour Class HBClass
s_oClass:AddMethod( "New", @New() )

como lo defino

CLASS TApp01
METHOD EntraDat @EntraDat()


ENDCLASS
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Ayuda con esta clase

Mensagem por alxsts »

Olá!

Leia o tópico Classes - Harbour - > Declaracao de variaveis. Creio que te ajudará.
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Ayuda con esta clase

Mensagem por bencz »

Você quer criar classes em tempo de execução ?
Imagem
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Ayuda con esta clase

Mensagem por bencz »

Seria isso ?

Código: Selecionar todos

LOCAL oHappy := HBClass():New( "THappy" )
__objAddMethod( oHappy, "Smile", @MySmile() )    // Adiciona um metodo
__objAddData( oHappy, "lHappy" )                 // Adiciona um field ( uma variavel )

oHappy:lHappy := .T.
? CSTR(oHappy:lHappy )     // --> .T.
? oHappy:Smile( 1 )        // --> :)
? oHappy:Smile( 2 )        // --> ;)
? oHappy:Smile( 3 )        // --> *SMILE*

STATIC FUNCTION MySmile( nType )
   IF HB_ISNUMERIC( nType )
      SWITCH nType
      CASE 1 ; RETURN ":)"
      CASE 2 ; RETURN ";)"
      CASE 3 ; RETURN "*SMILE*"
      ENDSWITCH
   ENDIF
   RETURN NIL
As funções que você busca, estão definidas neste arquivo fonte: https://github.com/vszakats/hb/blob/669 ... bjfunc.prg
Imagem
Responder