Condividi tramite


Modifica del un controllo DHTML ATL

La Creazione guidata controllo ATL fornisce codice di avvio in modo da poter compilare ed eseguire il controllo e visualizzare il modo in cui i metodi vengono scritti nei file di progetto e il modo in cui il DHTML chiama nel codice C++ del controllo usando i metodi dispatch. È possibile aggiungere qualsiasi metodo dispatch all'interfaccia. È quindi possibile chiamare i metodi nella risorsa HTML.

Per modificare il controllo DHTML ATL

  1. In Visualizzazione classi espandere il progetto di controllo.

    Si noti che l'interfaccia che termina in "UI" ha un metodo, OnClick. L'interfaccia che non termina nell'interfaccia utente non dispone di metodi.

  2. Aggiungere un metodo chiamato MethodInvoked all'interfaccia che non termina con l'interfaccia utente.

    Questo metodo verrà aggiunto all'interfaccia usata nel contenitore di controlli per l'interazione del contenitore, non all'interfaccia utilizzata da DHTML per interagire con il controllo. Solo il contenitore può richiamare questo metodo.

  3. Trovare il metodo stubed-out nel file .cpp e aggiungere codice per visualizzare una finestra di messaggio, ad esempio:

    ::MessageBox(NULL, _T("I'm invoked"), _T("Your Container Message"), MB_OK);
    
  4. Aggiungere un altro metodo denominato HelloHTML, solo questa volta, aggiungerlo all'interfaccia che termina con l'interfaccia "UI". Trovare il metodo stubbed-out HelloHTML nel file .cpp e aggiungere codice per visualizzare una finestra di messaggio, ad esempio:

    ::MessageBox(NULL, _T("Here's your message"), _T("HelloHTML"), MB_OK);
    
  5. Aggiungere un terzo metodo, GoToURL, all'interfaccia che non termina con l'interfaccia utente. Implementare questo metodo chiamando IWebBrowser2::Navigate, come indicato di seguito:

    m_spBrowser->Navigate(CComBSTR(L"www.microsoft.com"), NULL, NULL, NULL, NULL);
    

    È possibile usare i IWebBrowser2 metodi perché ATL fornisce un puntatore a tale interfaccia nel file con estensione h.

Modificare quindi la risorsa HTML per richiamare i metodi creati. Verranno aggiunti tre pulsanti per richiamare questi metodi.

Per modificare la risorsa HTML

  1. In Esplora soluzioni fare doppio clic sul file .htm per visualizzare la risorsa HTML.

    Esaminare il codice HTML, in particolare le chiamate ai metodi dispatch di Windows esterni. Il codice HTML chiama il metodo del OnClick progetto e i parametri indicano il corpo del controllo (theBody) e il colore da assegnare ("red"). Il testo che segue la chiamata al metodo è l'etichetta visualizzata sul pulsante.

  2. Aggiungere un altro OnClick metodo, modificare solo il colore. Ad esempio:

    <br>
    <br>
    <BUTTON onclick='window.external.OnClick(theBody, "white");'>Refresh</BUTTON>
    

    Questo metodo creerà un pulsante, con etichetta Refresh, che l'utente può fare clic per restituire il controllo allo sfondo bianco originale.

  3. Aggiungere la chiamata al HelloHTML metodo creato. Ad esempio:

    <br>
    <br>
    <BUTTON onclick='window.external.HelloHTML();'>HelloHTML</BUTTON>
    

    Questo metodo creerà un pulsante, con l'etichetta HelloHTML, che l'utente può fare clic per visualizzare la finestra di HelloHTML messaggio.

È ora possibile compilare e testare il controllo DHTML modificato.

Vedi anche

Supporto per il controllo DHTML