Udostępnij za pośrednictwem


Wywoływanie kodu C++ z DHTML

Uwaga / Notatka

Aktywna biblioteka szablonów (ATL) nadal jest obsługiwana. Nie dodajemy już funkcji ani nie aktualizujemy dokumentacji.

Kontrolka DHTML może być hostowana w kontenerze, takim jak Kontener testów lub Internet Explorer. Aby uzyskać informacje na temat uzyskiwania dostępu do kontenera testowego, zobacz Testowanie właściwości i zdarzeń za pomocą kontenera testowego.

Kontener obsługujący kontrolkę komunikuje się z kontrolką przy użyciu normalnych interfejsów sterowania. DHTML używa interfejsu wysyłania kończącego się na "UI" do komunikacji z kodem C++ i zasobem HTML. W Modyfikowanie kontrolki DHTML ATL można ćwiczyć dodawanie metod, które mają być wywoływane przez te różne interfejsy.

Aby zobaczyć przykład wywoływania kodu C++ z DHTML, utwórz kontrolkę DHTML przy użyciu Kreatora kontrolek ATL i zbadaj kod w pliku nagłówkowym i w pliku HTML.

Deklarowanie metod WebBrowser w pliku nagłówka

Aby wywołać metody języka C++ z interfejsu użytkownika DHTML, należy dodać metody do interfejsu użytkownika kontrolki. Na przykład plik nagłówkowy utworzony przez Kreatora kontrolek ATL zawiera metodę języka C++ OnClick, która jest elementem członkowskim interfejsu użytkownika kontrolki wygenerowanej przez kreatora.

Sprawdź OnClick w pliku h kontrolki:

STDMETHOD(OnClick)(IDispatch* pdispBody, VARIANT varColor)

Pierwszy parametr , pdispBody, jest wskaźnikiem do interfejsu wysyłania obiektu treści. Drugi parametr varColor identyfikuje kolor, który ma być stosowany do kontrolki.

Wywoływanie kodu C++ w pliku HTML

Po zadeklarowaniu metod WebBrowser w pliku nagłówka można wywołać metody z pliku HTML. Zwróć uwagę, że w pliku HTML Kreator sterowania ATL wstawia trzy metody wysyłania systemu Windows: trzy OnClick metody wysyłania komunikatów w celu zmiany koloru tła kontrolki.

Zbadaj jedną z metod w pliku HTML:

<BUTTON onclick='window.external.OnClick(theBody, "red");'>Red</BUTTON>

W powyższym kodzie HTML metoda zewnętrzna okna OnClick jest wywoływana jako część tagu przycisku. Metoda ma dwa parametry: theBody, która odwołuje się do treści dokumentu HTML i "red", co wskazuje, że kolor tła kontrolki zostanie zmieniony na czerwony po kliknięciu przycisku. Poniższy Red tag to etykieta przycisku.

Aby uzyskać więcej informacji na temat udostępniania własnych metod, zobacz Modyfikowanie kontrolki DHTML ATL. Aby uzyskać więcej informacji na temat pliku HTML, zobacz Identyfikowanie elementów projektu kontrolki DHTML.

Zobacz też

Obsługa formantu DHTML