Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Opmerking
De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
De ATL Control Wizard biedt starterscode, zodat u het besturingselement kunt bouwen en uitvoeren en kunt zien hoe de methoden in de projectbestanden zijn geschreven en hoe de DHTML de C++-code van het besturingselement aanroept met behulp van de dispatch-methoden. U kunt elke verzendmethode toevoegen aan de interface. Vervolgens kunt u de methoden in de HTML-resource aanroepen.
Het ATL DHTML-besturingselement aanpassen
Vouw in klasseweergave het besturingssysteemproject uit.
Houd er rekening mee dat de interface die eindigt op 'UI' één methode heeft,
OnClick. De interface die niet eindigt op 'UI' heeft geen methoden.Voeg een methode toe die wordt aangeroepen
MethodInvokedaan de interface die niet eindigt op 'UI'.Deze methode wordt toegevoegd aan de interface die wordt gebruikt in de besturingscontainer voor containerinteractie, niet aan de interface die door DHTML wordt gebruikt om met het besturingselement te communiceren. Alleen de container kan deze methode aanroepen.
Zoek de stubbed-outmethode in het .cpp-bestand en voeg code toe om een berichtvak weer te geven, bijvoorbeeld:
::MessageBox(NULL, _T("I'm invoked"), _T("Your Container Message"), MB_OK);Voeg een andere methode toe met de naam
HelloHTML, alleen deze keer, voeg deze toe aan de interface die eindigt op 'UI'. Zoek de stubbed-outmethodeHelloHTMLin het bestand .cpp en voeg code toe om een berichtvak weer te geven, bijvoorbeeld:::MessageBox(NULL, _T("Here's your message"), _T("HelloHTML"), MB_OK);Voeg een derde methode toe
GoToURLaan de interface die niet eindigt op 'UI'. Implementeer deze methode door IWebBrowser2::Navigate als volgt aan te roepen:m_spBrowser->Navigate(CComBSTR(L"www.microsoft.com"), NULL, NULL, NULL, NULL);U kunt de
IWebBrowser2methoden gebruiken omdat ATL een aanwijzer naar die interface biedt in uw .h-bestand.
Wijzig vervolgens de HTML-resource om de methoden aan te roepen die u hebt gemaakt. U voegt drie knoppen toe voor het aanroepen van deze methoden.
De HTML-resource wijzigen
Dubbelklik in Solution Explorer op het .htm-bestand om de HTML-resource weer te geven.
Bekijk de HTML, met name de aanroepen naar de externe Windows-verzendmethoden. De HTML roept de methode
OnClickvan het project aan en de parameters geven de inhoud van het besturingselement (theBody) en de kleur aan die moet worden toegewezen ("red"). De tekst na de methode-aanroep is het label dat op de knop wordt weergegeven.Voeg een andere
OnClickmethode toe, wijzig alleen de kleur. Voorbeeld:<br> <br> <BUTTON onclick='window.external.OnClick(theBody, "white");'>Refresh</BUTTON>Met deze methode maakt u een knop met het label Vernieuwen, waarop de gebruiker kan klikken om het besturingselement terug te keren naar de oorspronkelijke, witte achtergrond.
Voeg de aanroep toe aan de
HelloHTMLmethode die u hebt gemaakt. Voorbeeld:<br> <br> <BUTTON onclick='window.external.HelloHTML();'>HelloHTML</BUTTON>Met deze methode maakt u een knop met het label HelloHTML, waarop de gebruiker kan klikken om het
HelloHTMLberichtvak weer te geven.
U kunt nu het gewijzigde DHTML-besturingselement bouwen en testen.