<p><font face="courier new,monospace"># Hi<br># I want to get events of FrontPage Web and Page object models with this code.<br># OnPageNew and OnActivate works properly but when I click on the page nothing happen.<br># I know that I want to get events of two different COM objects.
<br># But I don't know how can I do that.<br># (I run this when FrontPage is active. Then I create a new page.)<br># Thanks</font></p>
<p><font face="courier new,monospace">from win32com.client import DispatchWithEvents<br>import time, pythoncom, msvcrt, types</font></p>
<p><font face="courier new,monospace">class FrontPageEvents:<br>&nbsp;&nbsp;&nbsp; def __init__(self):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print 'FrontPageEvents'<br>&nbsp;&nbsp;&nbsp; def OnPageNew(self, page):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global t1, t2<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t1=DispatchWithEvents(page, PageExEvents)
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t2=DispatchWithEvents(fp.ActiveDocument, PageEvents)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print fp.ActiveDocument</font></p>
<p><font face="courier new,monospace">class PageExEvents:<br>&nbsp;&nbsp;&nbsp; def __init__(self):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print 'PageExEvents'<br>&nbsp;&nbsp;&nbsp; def OnActivate(self):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print 'OnActivate'</font></p>
<p><font face="courier new,monospace">class PageEvents:<br>&nbsp;&nbsp;&nbsp; def __init__(self):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print 'PageEvents'<br>&nbsp;&nbsp;&nbsp; def onclick(self):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print 'onclick'</font></p>
<p><font face="courier new,monospace">t1=None<br>t2=None<br>fp=DispatchWithEvents(&quot;FrontPage.Application&quot;, FrontPageEvents)</font></p>
<p><font face="courier new,monospace">while not msvcrt.kbhit():<br>&nbsp;&nbsp;&nbsp; pythoncom.PumpWaitingMessages()<br>&nbsp;&nbsp;&nbsp; time.sleep(.2)<br>msvcrt.getch()<br></font></p>