Page 1 of 1

Ole With Events

Posted: Wed Dec 24, 2008 3:41 pm
by Carlos Mora
¡Feliz Navidad para los compañeros del foro!

Les dejo la clase OleWithEvent, que le añade control de eventos a los ActiveX.

El primer ejemplo es con Harbour, sin FW, y muestra como se usa con ADO.

http://www.ziddu.com/download/5958441/O ... 1.zip.html

El segundo ejemplo usa FW, de hecho es el programa TestxBrw2 del directorio samples, modificado para que use ADO y muestre eventos.

http://www.ziddu.com/download/5958440/O ... 2.zip.html

Ambos son proyectos de xMate, tal vez tengas que ajustar el entorno para recompilarlos, pero los exes estan incluidos para probarlo.

Aun falta mejorarla, ya que no reconoce aun los eventos por nombre sino por el ID, pero con lo que hay se puede usar.


Espero sea de utilidad.

(*) He cambiado el alojamiento de los ficheros

Posted: Wed Dec 24, 2008 6:09 pm
by Antonio Linares
Carlos,

Seria muy interesante si pudieses adaptar tus cambios a la Clase OLE propia de Harbour/xHarbour para que asi pueda incorporarse a los repositorios oficiales de Harbour/xHarbour.

Seguro que muchos usuarios de Harbour/xHarbour te lo agradeceran :-)

Re: Ole With Events

Posted: Fri Jan 02, 2009 7:57 am
by Biel EA6DD
Buen trabajo Carlos, gracias.

To: FW/Antonio Linares (Topic: Ole With Events)

Posted: Fri Jun 13, 2014 8:51 pm
by Jose Dolar
Dear Antonio,

I'm looking ways to handle events of Ole. I used CreateObject(programID) to create the object. I can use methods and properties but I can't figure to received events. I am not very good in Spanish.

My question is how can I handle events of objects created by function CreateObject(programID). I am already using the object in my app but I need to receive and handle fired events.

Thank you very much.

Jose

Re: Ole With Events

Posted: Sat Jun 14, 2014 6:03 am
by Antonio Linares
Jose,

FWH implements a function ActXEvents() (called from Class THActiveX METHOD ReadTypes), that read all the events names that the OLE object uses:

::aEvents = ActXEvents( cTypeLib, ::oOleAuto:__hObj )

Please review FWH\source\classes\activex.prg. Both Classes TActiveX (the first one implemented in FWH) and THActiveX are in that file.

PROCEDURE Event( ... ) CLASS THActiveX is the method that routes the events :-)