Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Anmärkning
Det aktiva mallbiblioteket (ATL) stöds fortfarande. Vi lägger dock inte längre till funktioner eller uppdaterar dokumentationen.
ATL-kontrollguiden innehåller startkod så att du kan skapa och köra kontrollen, så att du kan se hur metoderna skrivs i projektfilerna och hur DHTML anropar kontrollens C++-kod med hjälp av sändningsmetoderna. Du kan lägga till valfri dispatch-metod i gränssnittet. Sedan kan du anropa metoderna i HTML-resursen.
Ändra ATL DHTML-kontrollen
Expandera kontrollprojektet i klassvyn.
Observera att gränssnittet som slutar i "användargränssnittet" har en metod,
OnClick. Gränssnittet som inte slutar med "användargränssnittet" har inga metoder.Lägg till en metod som anropas
MethodInvokedi gränssnittet som inte slutar med "användargränssnittet".Den här metoden läggs till i gränssnittet som används i kontrollcontainern för containerinteraktion, inte till det gränssnitt som används av DHTML för att interagera med kontrollen. Endast containern kan anropa den här metoden.
Hitta metoden stubbed-out i filen .cpp och lägg till kod för att visa en meddelanderuta, till exempel:
::MessageBox(NULL, _T("I'm invoked"), _T("Your Container Message"), MB_OK);Lägg till en annan metod med namnet
HelloHTML, bara den här gången, lägga till den i gränssnittet som slutar i "UI". Hitta metoden stubbed-outHelloHTMLi filen .cpp och lägg till kod för att visa en meddelanderuta, till exempel:::MessageBox(NULL, _T("Here's your message"), _T("HelloHTML"), MB_OK);Lägg till en tredje metod,
GoToURL, i gränssnittet som inte slutar med "användargränssnittet". Implementera den här metoden genom att anropa IWebBrowser2::Navigate enligt följande:m_spBrowser->Navigate(CComBSTR(L"www.microsoft.com"), NULL, NULL, NULL, NULL);Du kan använda
IWebBrowser2metoderna eftersom ATL ger en pekare till gränssnittet åt dig i .h-filen.
Ändra sedan HTML-resursen så att den anropar de metoder som du skapade. Du lägger till tre knappar för att anropa dessa metoder.
Ändra HTML-resursen
Dubbelklicka på filen .htm i Solution Explorer för att visa HTML-resursen.
Granska HTML-koden, särskilt anropen till de externa Windows-sändningsmetoderna. HTML-koden anropar projektets metod och parametrarna anger kontrollens brödtext (
OnClick) och färgen som ska tilldelastheBody("red"). Texten efter metodanropet är etiketten som visas på knappen.Lägg till en annan
OnClickmetod, ändra bara färgen. Till exempel:<br> <br> <BUTTON onclick='window.external.OnClick(theBody, "white");'>Refresh</BUTTON>Den här metoden skapar en knapp med etiketten Uppdatera, som användaren kan klicka på för att returnera kontrollen till den ursprungliga vita bakgrunden.
Lägg till anropet till den
HelloHTMLmetod som du skapade. Till exempel:<br> <br> <BUTTON onclick='window.external.HelloHTML();'>HelloHTML</BUTTON>Den här metoden skapar en knapp med etiketten HelloHTML som användaren kan klicka på för att visa
HelloHTMLmeddelanderutan.
Nu kan du skapa och testa den ändrade DHTML-kontrollen.