IHTMLElement 이벤트 핸들러에서 이벤트 인수를 가져오지 못함
-
02-07-2019 - |
문제
IHTMLElement 인스턴스에 콜백을 추가했지만 이벤트에 대해 IDispatch::Invoke가 호출되면 인수가 전혀 없습니다(예:pDispParams->cArgs 및 pDispParams->cNamedArgs는 항상 0입니다.예를 들어 onmouseup 이벤트에 대한 콜백을 추가합니다.내가 알 수 있듯이 이 이벤트에 대한 콜백은 MouseEvent 객체를 수신해야 합니다.그 맞습니까?그렇다면 이러한 일이 발생하도록 하려면 어떻게 해야 합니까?
이는 Windows XP SP2에서 IE 6 sp2(또는 그 이상)용 MSHTML을 사용하는 것입니다.
해결책
다음을 포함한 모든 DOM 이벤트에 대한 이벤트 인수 onmouseup
부모 창에 저장됩니다. event
재산 (IHTMLWindow2::event
)
아직 캐시된 상위 창을 갖고 있지 않은 경우, IHTMLElement
가지고있다 document
반환하는 속성 IHTMLDocument
상호 작용.그로부터 당신은 쿼리할 수 있습니다 IHTMLDocument2
이는 parentWindow
재산.그만큼 IHTMLWindow2
반환된 것은 event
당신이 찾고 있는 부동산.거기에서 이벤트 인터페이스를 쿼리할 수 있어야 합니다.
제휴하지 않습니다 StackOverflow