Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Herança em Componentes VFP com EVENTHANDLER
Message
De
09/03/2005 22:04:43
Renato Mendes
Renamark Sistemas Ltda
Uberlândia, Brésil
 
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
COM/DCOM et OLE Automation
Titre:
Herança em Componentes VFP com EVENTHANDLER
Versions des environnements
Visual FoxPro:
VFP 8 SP1
OS:
Windows Server 2003
Network:
Windows 2003 Server
Database:
Visual FoxPro
Divers
Thread ID:
00994291
Message ID:
00994291
Vues:
54
Caros colegas,

Este código para uma herança de classe executa sem problema, mas imagine criar algo semelhante, mas com um componente.
oExibe=NEWOBJECT("ExibirDadosFilha")
?oExibe.DarBoasVindas('Fulano de Tal')
DEFINE CLASS ExibirDados AS SESSION
	PROCEDURE DarBoasVindas (tcUsuario)
		RETURN "Olá: " + tcUsuario
	ENDPROC
ENDDEFINE

DEFINE CLASS ExibirDadosFilha as ExibirDados
	PROCEDURE DarBoasVindas (tcUsuario)
		RETURN DODEFAULT(tcUsuario) + '. Tudo bem?'
	ENDPROC
ENDDEFINE
Creio que ele deveria ficar assim.
Mas ai que está o inconviniente, com componente do próprio VFP o EVENTHANDLER retorna sempre falso.
Será que estou com o conceito errado?
BUILD PROJECT componente_01 FROM ExibirDados
BUILD DLL componente_01 from componente_01 recomp

oComp01 = NEWOBJECT("componente_01.ExibirDados")
oEvents = NEWOBJECT("myclass")
?EVENTHANDLER(oComp01,oEvents) && retorna .F. porque e como fazer?
?oComp01.DarBoasVindas('fulano')
?oEvents.IExibirDados_DarBoasVindas('fulano de tal') && consequentemente o valor retornado não é o esperado


DEFINE CLASS myclass AS session OLEPUBLIC
	IMPLEMENTS IExibirDados IN "componente_01.ExibirDados"
	PROCEDURE IExibirDados_DarBoasVindas(tcUsuario AS STRING) AS STRING
	 * add user code here
	ENDPROC
ENDDEFINE

DEFINE CLASS ExibirDados AS SESSION OLEPUBLIC
	FUNCTION DarBoasVindas (tcUsuario AS STRING) AS STRING
		LOCAL lcMensagemRetorno AS STRING
		lcMensagemRetorno = "Olá: " + tcUsuario
		RETURN lcMensagemRetorno
	ENDFUNC
ENDDEFINE
Renato Mendes
Renamark Sistemas
renatomendes@renamark.com.br
Répondre
Fil
Voir

Click here to load this message in the networking platform