Het ATL DHTML-besturingselement 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

  1. 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.

  2. Voeg een methode toe die wordt aangeroepen MethodInvoked aan 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.

  3. 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);
    
  4. 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-outmethode HelloHTML in 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);
    
  5. 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 IWebBrowser2 methoden 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

  1. 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 OnClick van 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.

  2. Voeg een andere OnClick methode 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.

  3. Voeg de aanroep toe aan de HelloHTML methode 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 HelloHTML berichtvak weer te geven.

U kunt nu het gewijzigde DHTML-besturingselement bouwen en testen.

Zie ook

Ondersteuning voor DHTML-beheer