Partager via


Étape 7 : Implémentation du contrôle sur une page Web

Le contrôle est maintenant terminé.Pour afficher votre travail de contrôle dans une situation réelle, placez -la dans une page Web.Un fichier HTML qui contient le contrôle a été créé lorsque vous avez défini votre contrôle.Ouvrez le fichier PolyCtl.htm de l'explorateur de solutions, et vous pouvez consulter votre contrôle sur une page Web.

Dans cette étape, vous script de la page Web de répondre aux événements.Vous modifierez également le contrôle pour effectuer Internet Explorer savoir que le contrôle est sûr pour le script.

Script de la page Web

Le contrôle ne fait rien encore, vous modifiez la page Web de répondre aux événements que vous envoyez.

Pour script de la page Web

  1. Ouvrez PolyCtl.htm et sélectionnez le mode HTML.Ajoutez les lignes suivantes au code HTML.Elles doivent être ajoutées après </OBJECT> mais avant </BODY>.

    <SCRIPT LANGUAGE="VBScript">
    <!--
    Sub PolyCtl_ClickIn(x, y)
       PolyCtl.Sides = PolyCtl.Sides + 1
    End Sub
    Sub PolyCtl_ClickOut(x, y)
       PolyCtl.Sides = PolyCtl.Sides - 1
    End Sub
    -->
    </SCRIPT>
    
  2. Enregistrez le fichier HTM.

Vous avez ajouté un code VBScript qui obtient sur les côtés la propriété du contrôle et augmente le nombre de côtés d'un si vous cliquez à l'intérieur de le contrôle.Si vous cliquez à l'extérieur de le contrôle, vous réduisez le nombre de côtés par un.

Indiquer que le contrôle est sûr pour le script

Vous pouvez afficher la page Web avec le contrôle dans Internet Explorer ou, plus facilement, utiliser la vue de navigateur web intégrée dans Visual C++.Pour afficher votre contrôle dans la vue de navigateur web, cliquez avec le bouton droit sur PolyCtl.htm, puis cliquez sur Afficher dans le navigateur.

En fonction de vos paramètres actuels de sécurité Internet Explorer, vous pouvez recevoir une boîte de dialogue d'alerte sécurité qui déclare qu'il ne soit pas sécurisé script le contrôle et peut éventuellement effectuer les dommages.Par exemple, si vous aviez un contrôle qui a affiché un fichier mais aviez également une méthode d' Delete qui a supprimé un fichier, il serait possible si vous le visualisiez uniquement sur une page.Il serait non sécurisé de script, toutefois, car un utilisateur peut appeler la méthode d' Delete .

Note de sécuritéNote de sécurité

Pour ce didacticiel, vous pouvez modifier vos paramètres de sécurité dans Internet Explorer pour exécuter les contrôles ActiveX qui ne sont pas marqués comme sécurisée.Dans le panneau de configuration, cliquez sur Propriétés Internet et cliquez sur Sécurité pour modifier les paramètres appropriés.Lorsque vous avez terminé le didacticiel, modifiez les paramètres de sécurité à son état d'origine.

Vous pouvez par programme alerter Internet Explorer qu'il n'a pas besoin d'afficher la boîte de dialogue d'alerte sécurité de ce contrôle particulier.Vous pouvez le faire avec l'interface d' IObjectSafety , et fournit des ATL une implémentation de cette interface dans la classe IObjectSafetyImpl.Pour ajouter l'interface à votre contrôle, ajoutez IObjectSafetyImpl à votre liste des classes héritées et ajoutez une entrée pour celui-ci dans le mappage COM.

Pour ajouter IObjectSafetyImpl au contrôle

  1. Ajoutez la ligne suivante à la fin de la liste des classes héritées dans PolyCtl.h et ajoutez une virgule dans la ligne précédente :

    public IObjectSafetyImpl<CPolyCtl, INTERFACESAFE_FOR_UNTRUSTED_CALLER>
    
  2. Ajoutez la ligne suivante au mappage COM dans PolyCtl.h :

    COM_INTERFACE_ENTRY(IObjectSafety)
    

Génération et test du contrôle

Générez le contrôle.Une fois la génération terminée, ouvrez PolyCtl.htm dans la vue du navigateur à nouveau.Cette fois, la page Web doit être affiché directement sans boîte de dialogue d'alerte de sécurité.Cliquez à l'intérieur de le polygone ; le nombre de côtés augmente d'un.Cliquez à l'extérieur de le polygone pour réduire le nombre de côtés.Si vous essayez de réduire le nombre de côtés inférieure à trois, le message d'erreur que vous définissez.

Pour revenir à l'étape 6

Étapes suivantes

Elle conclut le didacticiel ATL.Pour obtenir des liens vers des informations supplémentaires sur ATL, consultez Page de démarrage ATL.

Voir aussi

Référence

Didacticiel ATL