Změna ovládacího prvku ATL DHTML
Průvodce ovládacími prvky ATL poskytuje počáteční kód, který umožňuje sestavit a spustit ovládací prvek, a proto můžete vidět, jak jsou metody napsané v souborech projektu a jak DHTML volá do kódu C++ ovládacího prvku pomocí metod odesílání. Do rozhraní můžete přidat libovolnou metodu odeslání. Pak můžete volat metody v prostředku HTML.
Úprava ovládacího prvku ATL DHTML
V zobrazení třídy rozbalte řídicí projekt.
Všimněte si, že rozhraní, které končí na "UI" má jednu metodu,
OnClick
. Rozhraní, které nekončí uživatelským rozhraním, nemá žádné metody.Přidejte do rozhraní volanou
MethodInvoked
metodu, která nekončí v uživatelském rozhraní.Tato metoda bude přidána do rozhraní, které se používá v kontejneru ovládacího prvku pro interakci kontejneru, nikoli do rozhraní používaného DHTML pro interakci s ovládacím prvku. Tuto metodu může vyvolat pouze kontejner.
Vyhledejte metodu stubbed-out v souboru .cpp a přidejte kód pro zobrazení pole se zprávou, například:
::MessageBox(NULL, _T("I'm invoked"), _T("Your Container Message"), MB_OK);
Přidejte další metodu nazvanou
HelloHTML
, pouze tentokrát, přidejte ji do rozhraní, které končí v uživatelském rozhraní. Vyhledejte metodu stubbed-outHelloHTML
v souboru .cpp a přidejte kód pro zobrazení pole se zprávou, například:::MessageBox(NULL, _T("Here's your message"), _T("HelloHTML"), MB_OK);
Přidejte třetí metodu ,
GoToURL
do rozhraní, které nekončí na "uživatelské rozhraní". Tuto metodu implementujte voláním IWebBrowser2::Navigate následujícím způsobem:m_spBrowser->Navigate(CComBSTR(L"www.microsoft.com"), NULL, NULL, NULL, NULL);
Metody můžete použít
IWebBrowser2
, protože ATL poskytuje ukazatel na toto rozhraní pro vás v souboru .h.
Dále upravte prostředek HTML tak, aby vyvolal metody, které jste vytvořili. Přidáte tři tlačítka pro vyvolání těchto metod.
Úprava prostředku HTML
V Průzkumník řešení poklikejte na soubor .htm a zobrazte prostředek HTML.
Prozkoumejte kód HTML, zejména volání externích metod odesílání systému Windows. KÓD HTML volá metodu
OnClick
projektu a parametry označují tělo ovládacího prvku (theBody
) a barvu, která se má přiřadit ("red
"). Text následující za voláním metody je popisek, který se zobrazí na tlačítku.Přidejte jinou
OnClick
metodu, změňte pouze barvu. Příklad:<br> <br> <BUTTON onclick='window.external.OnClick(theBody, "white");'>Refresh</BUTTON>
Tato metoda vytvoří tlačítko s popiskem Refresh, které uživatel může kliknutím vrátit ovládací prvek na původní bílé pozadí.
Přidejte volání metody,
HelloHTML
kterou jste vytvořili. Příklad:<br> <br> <BUTTON onclick='window.external.HelloHTML();'>HelloHTML</BUTTON>
Tato metoda vytvoří tlačítko s popiskem HelloHTML, na které uživatel může kliknout a zobrazit okno se zprávou
HelloHTML
.
Teď můžete sestavit a otestovat upravený ovládací prvek DHTML.