c++ - que - No obtener argumentos de eventos en el controlador de eventos IHTMLElement
parametros por linea de comandos c (1)
He agregado una devolución de llamada a una instancia de IHTMLElement, pero cuando se llama a IDispatch :: Invoke para el evento, nunca hay ningún argumento (es decir, los pDispParams-> cArgs y pDispParams-> cNamedArgs son siempre 0). Por ejemplo, agregué una devolución de llamada para un evento onmouseup. Por lo que puedo decir, se supone que una devolución de llamada para este evento recibirá un objeto MouseEvent. ¿Es eso correcto? Si es así, ¿qué debo hacer para asegurarme de que esto suceda?
Esto está usando MSHTML para IE 6 sp2 (o mejor) en Windows XP SP2.
Los argumentos de eventos para todos los eventos DOM, incluido onmouseup
se almacenan en la propiedad del event
la ventana principal ( IHTMLWindow2::event
)
Si aún no tiene la ventana principal en caché, IHTMLElement
tiene una propiedad de document
que devuelve una interfaz IHTMLDocument
. A partir de eso, puede consultar IHTMLDocument2
que tiene una propiedad parentWindow
. El IHTMLWindow2
que se devuelve tiene la propiedad del event
que está buscando. Debería poder consultar la interfaz del evento desde allí.