Frage

In meiner VC ++ Anwendung habe ich einen eingebetteten Browser (MSHTML). Es funktioniert gut, und übernimmt die Maus richtig (zB Klicks und wählt verarbeitet OK). Allerdings haben Mausraddrehungen über den eingebetteten Browser keine Auswirkungen. Das ist mein Problem.

Ich bin nicht sehr vertraut mit den Interna von MSHTML Einbettung und OLE im Allgemeinen. Dies ist eine wxWidgets Anwendung (wxWidgets ist eine C ++ GUI-Bibliothek), und ich bin die Nutzung seiner IEHTMLWin Komponente (die eine MSHTML Steuerelement hostet und wickelt es in der wxWindow Schnittstelle). Allerdings habe ich die Quelle haben und bin bereit, einige Debug zu tun.

Vergessen wxWidgets und rein über OLE und MSHTML gesprochen, was der richtigen Ort ist für die Problemursache zu suchen beginnen? Ich habe versucht, naive googeln für Varianten von „mshtml Mausereignisse“ oder „mshtml Rad“, aber hat keine gute Hinweise geben.

Wenn Sie einen Blick auf den Code von IEHTMLWin nehmen wollen, kann es hier . Die iehtmlwin.c Datei (1,5 k Zeilen) hat die All-OLE bezogenen Code und implementiert alle Schnittstellen benötigt eine Web-Browser-Steuerelement zu hosten. Es ist erwähnenswert, dass Mausereignisse gehen nicht auf die enthaltenden wxWindow überhaupt (OnMouse wird nie genannt).

{} UPD mshtml Version: 6.00.2900.3314. Andere Anwendungen, die dieses Steuerelement (einschließlich IE) host den Radträger. {/ UPD}


jdigital Hinweis (in Bezug auf Winspector) war sehr hilfreich. Nach einiger Nachricht Schnupfen, werde mir klar, dass das Problem konzentriert bezogene ist. Ein Klick auf die Browser-Steuerung funktioniert irgendwie nicht Fokus auf die Browser-Steuerung (im Gegensatz zu, sagen wir, RichEdit) gesetzt und WM_MOUSEWHEEL nicht dorthin geschickt. So das neue Problem, den Fokus setzt.

War es hilfreich?

Lösung

Versuchen Winspector ( http://www.windows-spy.com/ ) die können Sie die Windows-Nachrichten sehen. Stellen Sie sicher, dass die Scroll-Rad Ereignisse durchlaufen zu werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top