def addEventListener(self, node, event_name, event_fn): rcvr = mshtmlevents._DispEventReceiver() rcvr.dispmap = {0: event_fn} rcvr.sender = node ifc = rcvr.QueryInterface(IDispatch) v = VARIANT(ifc) setattr(node, "on"+event_name, v) return ifc rcvr = mshtmlevents.GetDispEventReceiver(MSHTML.HTMLElementEvents2, event_fn, "on%s" % event_name) rcvr.sender = node ifc = rcvr.QueryInterface(IDispatch) node.attachEvent("on%s" % event_name, ifc) return ifc
def _addXMLHttpRequestEventListener(self, node, event_name, event_fn): #print "_addXMLHttpRequestEventListener", event_name rcvr = mshtmlevents._DispEventReceiver() rcvr.dispmap = {0: event_fn} #print rcvr rcvr.sender = node #print rcvr.sender ifc = rcvr.QueryInterface(IDispatch) #print ifc v = VARIANT(ifc) #print v setattr(node, event_name, v) return ifc
def addEventListener(self, node, event_name, event_fn): rcvr = mshtmlevents._DispEventReceiver() rcvr.dispmap = {0: event_fn} rcvr.sender = node ifc = rcvr.QueryInterface(IDispatch) v = VARIANT(ifc) setattr(node, "on" + event_name, v) return ifc rcvr = mshtmlevents.GetDispEventReceiver(MSHTML.HTMLElementEvents2, event_fn, "on%s" % event_name) rcvr.sender = node ifc = rcvr.QueryInterface(IDispatch) node.attachEvent("on%s" % event_name, ifc) return ifc