Aktives X-Steuer-JavaScript

8

Mein Kollege und ich sind auf eine unangenehme Situation gestoßen, in der wir eine aktive X-Steuerung verwenden müssen, um eine Webkamera auf einer Seite zu manipulieren.

Ist es möglich, einer Schaltfläche im aktiven x-Steuerelement einen JavaScript-Ereignishandler zuzuweisen, sodass beim Klicken auf eine Aktion auf der Seite eine Aktion ausgelöst wird, oder müssen wir auf der HTML-Seite selbst eine Schaltfläche erstellen, die Active manipuliert X Control und kann dann alle notwendigen Aktionen auf der Seite auslösen?

    
kemiller2002 25.08.2008, 18:07
quelle

2 Antworten

7

Bitte verwenden Sie einfach ein vorhandenes ActiveX-Steuerelement. Wie Flash oder Silverlight. Flash hat eingebaute Webcam-Unterstützung und ist per JavaScript steuerbar. Silverlight hat keine integrierte Kameraunterstützung, aber die JavaScript-Integration ist fantastisch.

Wenn Sie Ihre eigenen schreiben müssen, dann ärgern Sie sich nicht, es ist trivial, es mit JavaScript zu interagieren. Sie müssen nur die Benutzeroberfläche IDispatch bereitstellen.

Für Ereignisse müssen Sie mehr über Verbindungspunkte erfahren.

    
Frank Krueger 25.08.2008, 19:25
quelle
4

Ja! Sie können Ereignisse in C ++ / ActiveX-Land werfen, wodurch der JavaScript-Code eine Event-Handler-Funktion ausführt. Ich war sogar in der Lage, ein ganzes unsichtbares ActiveX-Steuerelement (dieselbe Farbe wie der Seitenhintergrund) ohne Schaltflächen oder visuelles Feedback zu erstellen, bei dem die gesamte GUI über JavaScript und CSS funktionierte.

edit: Franks Rat ist richtig. Hier finden Sie den Link zu Skriptereignissen.

Meine Strategie bestand darin, eine C ++ - Funktion namens MyUpdate (die IConnectionPoint implementiert) aufzurufen, wenn ich Updates im Browser erzwingen wollte.

(Ich habe auch dafür gesorgt, Windows-Nachrichten in der Fire_MyUpdate-Methode zu pumpen, da manchmal JavaScript-Code durch Aufruf von Methoden im ActiveX-Steuerelement in C ++ land zurückgerufen wird. Dadurch wird das Einfrieren des Browsers verhindert und sichergestellt, zB für eine Abbrechen-Schaltfläche.)

Auf der Seite des Browsers hat der JavaScript-Code die globale Variable, die auf das Objekt verweist, gefolgt von "::", gefolgt vom Methodennamen:

%Vor%     
Jared Updike 25.08.2008 19:22
quelle

Tags und Links