Modification du contrôle ATL DHTML

L'Assistant objet ATL fournit le code de démarrage vous pouvez construire et exécuter le contrôle, et donc vous pouvez voir comment les méthodes sont écrites dans les fichiers de projet et comment le DHTML appelle dans du code C++ du contrôle en utilisant les méthodes d'expédition. Vous pouvez ajouter n'importe quelle méthode d'expédition à l'interface. Ensuite, vous pouvez appeler les méthodes dans la ressource HTML.

Pour modifier le contrôle ATL DHTML

  1. Dans ClassView, développez le projet de contrôle.

    Notez que l'interface qui se termine en « UI » a une seule méthode, OnClick . L'interface qui ne se termine pas en « UI » n'a pas toutes les méthodes.

  2. Ajoutez une méthode appelée MethodInvoked pour l'interface qui ne se termine pas en « UI. »

    Cette méthode s'ajouteront à l'interface qui est utilisé dans le conteneur de contrôle pour l'interaction de conteneur, pas à l'interface utilisée par DHTML pour interagir avec le contrôle. Seul le conteneur peut appeler cette méthode.

  3. Trouver la méthode extraite-out dans le fichier .cpp et ajouter du code pour afficher une boîte de message, par exemple:
    :: MessageBox(NULL, "I'm invoked", "Your Container Message", MB_OK)
    
  4. Ajoutez une méthode appelée HelloHTML , seulement cette fois, l'ajouter à l'interface qui se termine en « UI ». Trouver la sortie terminée HelloHTML méthode dans le .cpp fichier et ajouter du code pour afficher une boîte de message, par exemple:
     :: MessageBox(NULL, "Here's your message", "HelloHTML", MB_OK)
    
  5. Ajoutez une troisième méthode, GoToURL , également à l'interface se terminant en « UI. » Implémentez cette méthode en appelant IWebBrowser2::Navigate, comme suit
    m_spBrowser-> ;Navigate(CComBSTR("www.Microsoft.com"), NULL, NULL, NULL, NULL)
    

    Vous pouvez utiliser les méthodes de IWebBrowser2 parce qu'ATL fournit un pointeur vers cette interface pour vous dans votre fichier .h.

Ensuite, modifiez la ressource HTML pour appeler les méthodes que vous avez créé. Vous allez ajouter trois boutons pour appeler ces méthodes.

Pour modifier la ressource HTML

  1. Dans FileView, double-cliquez sur le fichier .htm pour afficher la ressource HTML.

    Examinez le code HTML, notamment les appels aux méthodes de répartition Windows externes. Le HTML appelle le projet OnClick méthode et les paramètres indiquent l'organe de contrôle ( theBody ) et la couleur à assigner (" red "). Le texte suivant l'appel de méthode est l'étiquette qui apparaît sur le bouton.

  2. Ajouter un autre OnClick méthode, seule change la couleur. Par exemple:
    lt ; br >
    <br>
    < onclick='window.external.OnClick bouton (theBody, « blanc »); »> actualiser < / bouton & gt
    

    Cette méthode crée un bouton, actualiser, que l'utilisateur peut cliquer pour renvoyer le contrôle à l'arrière-plan original, blanc.

  3. Ajoutez l'appel à la HelloHTML méthode que vous avez créé. Par exemple:
    lt ; br >
    <br>
    < bouton onclick='window.external.HelloHTML(); »> HelloHTML < / bouton & gt
    

    Cette méthode crée un bouton, HelloHTML, que l'utilisateur peut cliquer pour afficher la HelloHTML boîte de message.

  4. Enfin, ajoutez l'appel à la GoToURL méthode que vous avez créé. Par exemple:
    lt ; br >
    <br>
    < bouton onclick='window.external.GoToURL(); »> WWW < / bouton & gt
    

    Cette méthode crée un bouton, WWW, que l'utilisateur peut cliquer pour afficher la page Web de Microsoft dans le contrôle.

Vous pouvez construire maintenant et tester le contrôle DHTML modifié.

Prise en charge ATL des contrôles DHTML

Index