Guide pratique pour ajouter, modifier ou supprimer des contrôles (C++)

À l’aide de l’Éditeur de boîte de dialogue, vous pouvez ajouter, redimensionner, modifier et supprimer des contrôles dans les boîtes de dialogue. Vous pouvez également modifier les propriétés d’un contrôle, telles que son ID, ou s’il est initialement visible au moment de l’exécution.

L’onglet Éditeur de boîte de dialogue s’affiche dans la fenêtre Boîte à outils lorsque vous travaillez dans l’Éditeur de boîte de dialogue. Vous pouvez également personnaliser la fenêtre Boîte à outils pour faciliter l’utilisation. Pour plus d’informations, consultez Utilisation de la boîte à outils et Afficher ou masquer la fenêtre Boîte à outils.

Conseil

Lors de l’utilisation de l’Éditeur de boîte de dialogue, dans de nombreuses instances, vous pouvez sélectionner le bouton droit de la souris pour afficher un menu contextuel de commandes fréquemment utilisées.

ajouter des contrôles

Pour ajouter un contrôle

  1. Assurez-vous que la fenêtre avec onglet de la boîte de dialogue représente le document actif dans le cadre de l’éditeur. Si un dialogue n’est pas le document actif, vous ne verrez pas l’ongletÉditeur de boîte de dialogue dans la boîte à outils.

  2. Sous l’onglet Éditeur de boîte de dialogue de la fenêtre Boîte à outils , sélectionnez le contrôle souhaité, puis :

    • Sélectionnez la boîte de dialogue à l’emplacement où vous souhaitez placer le contrôle et le contrôle s’affiche à l’emplacement où vous avez sélectionné.

    • Faites glisser et déposez le contrôle de la fenêtre Boîte à outils vers l’emplacement de votre boîte de dialogue. Vous pouvez ensuite déplacer le contrôle ou modifier sa taille et sa forme.

    • Double-cliquez sur le contrôle dans la fenêtre Boîte à outils et apparaît dans votre boîte de dialogue. Repositionnez le contrôle sur l’emplacement que vous préférez.

Pour ajouter plusieurs contrôles

  1. Lorsque vous maintenez la touche Ctrl enfoncée, sélectionnez un contrôle dans la fenêtre Boîte à outils .

  2. Relâchez la touche Ctrl et sélectionnez la boîte de dialogue autant de fois que vous souhaitez ajouter le contrôle particulier.

  3. Appuyez sur Échap pour arrêter le placement des contrôles.

Pour dimensionner un contrôle lors de son ajout

  1. Sélectionnez un contrôle dans la fenêtre Boîte à outils .

  2. Placez votre curseur qui apparaît sous forme de poils croisés, où vous souhaitez que le coin supérieur gauche du nouveau contrôle se trouve dans votre boîte de dialogue.

  3. Sélectionnez et maintenez le bouton de la souris enfoncé pour ancrer le coin supérieur gauche de votre contrôle dans la boîte de dialogue. Faites ensuite glisser le curseur vers la droite et vers le bas jusqu’à ce que le contrôle soit la taille souhaitée.

    Remarque

    Vous pouvez ancrer l’un des quatre coins du contrôle que vous dessinez. Cette procédure a utilisé le coin supérieur gauche comme exemple.

  4. Relâchez le bouton de la souris. Le contrôle s’installe sur la boîte de dialogue dans la taille que vous avez spécifiée.

Conseil

Vous pouvez redimensionner le contrôle après l’avoir supprimé dans la boîte de dialogue en déplaçant les poignées de dimensionnement sur la bordure du contrôle. Pour plus d’informations, consultez Dimensionnement des contrôles individuels.

Pour ajouter un contrôle personnalisé

Vous pouvez ajouter des contrôles personnalisés à la boîte de dialogue. Sélectionnez l’icône Contrôle personnalisé dans la boîte à outils et faites-la glisser vers votre boîte de dialogue. Pour ajouter un Syslink contrôle, ajoutez un contrôle personnalisé, puis remplacez la propriété SyslinkClass du contrôle par . Cette action entraîne l’actualisation et l’affichage des propriétés du Syslink contrôle. Pour plus d’informations sur la classe wrapper MFC, consultez CLinkCtrl.

Modifier les contrôles

Pour modifier les propriétés d’un contrôle ou d’un contrôle

  1. Dans la boîte de dialogue, sélectionnez le contrôle que vous souhaitez modifier.

    Remarque

    Si vous sélectionnez plusieurs contrôles, seules les propriétés communes aux contrôles sélectionnés peuvent être modifiées.

  2. Dans la Fenêtre Propriétés, modifiez les propriétés de votre contrôle.

    Remarque

    Lorsque vous définissez la propriété Bitmap pour un bouton, une case d’option ou case activée contrôle box égal à True, le style BS_BITMAP est implémenté pour votre contrôle. Pour plus d’informations, consultez Styles de bouton. Pour obtenir un exemple d’association d’une bitmap à un contrôle, consultez CButton ::SetBitmap. Les bitmaps n’apparaissent pas sur votre contrôle pendant que vous êtes dans l’Éditeur de boîte de dialogue.

Pour annuler les modifications apportées aux propriétés d’un contrôle

  1. Vérifiez que le contrôle a le focus dans l’Éditeur de boîte de dialogue.

  2. Accédez au menu Modifier>l’annulation. Si le focus n’est pas sur le contrôle, la commande Annuler n’est pas disponible.

Pour définir une variable membre pour un contrôle de boîte de dialogue (à l'exception d'un bouton)

Remarque

Ce processus s’applique uniquement aux contrôles de boîte de dialogue au sein d’un projet MFC. Les projets ATL doivent utiliser la boîte de dialogue Nouveaux messages windows et gestionnaires d’événements . Pour plus d’informations, consultez Types de messages associés à des objets d’interface utilisateur, modification d’un gestionnaire de messages et définition d’un gestionnaire de messages pour un message Réflexions ed Message.

  1. Dans l’Éditeur de boîte de dialogue, sélectionnez un contrôle.

  2. Lorsque vous appuyez sur la touche Ctrl , double-cliquez sur le contrôle de boîte de dialogue.

    L’Assistant Ajouter une variable membre s’affiche.

  3. Tapez les informations appropriées dans l’Assistant Ajouter une variable de membre. Pour plus d’informations, consultez Dialog Data Exchange.

  4. Sélectionnez OK pour revenir à l’éditeur de boîte de dialogue.

Conseil

Pour passer d'un contrôle de boîte de dialogue à son gestionnaire existant, double-cliquez sur le contrôle.

Vous pouvez également utiliser l’onglet Variables membres de l’Assistant Classe MFC pour ajouter de nouvelles variables membres pour une classe spécifiée et afficher des variables membres déjà définies.

Supprimer des contrôles

Dans la boîte de dialogue, sélectionnez le contrôle, puis appuyez sur la touche Supprimer ou accédez au menu Modifier>la suppression.

Autres problèmes

Résolution des problèmes

Après avoir ajouté un contrôle commun ou un contrôle d’édition enrichi à une boîte de dialogue, il n’apparaît pas lorsque vous testez la boîte de dialogue. Sinon, la boîte de dialogue elle-même n’apparaît pas. Par exemple :

  1. Créez un projet Win32, en modifiant les paramètres de l’application afin de créer une application Windows (et non une application console).

  2. Dans l’affichage des ressources, double-cliquez sur le fichier .rc .

  3. Sous l’option de boîte de dialogue, double-cliquez sur la zone À propos .

  4. Ajoutez un contrôle d’adresse IP à la boîte de dialogue.

  5. Enregistrez et régénérez tout.

  6. Exécutez le programme.

  7. Dans le menu Aide de la boîte de dialogue, sélectionnez la commande About et observez qu’aucune boîte de dialogue n’est affichée.

Actuellement, l’Éditeur de boîte de dialogue n’ajoute pas automatiquement de code à votre projet lorsque vous faites glisser et déposez les contrôles courants ou les contrôles d’édition enrichi suivants sur une boîte de dialogue. Visual Studio ne fournit pas non plus d’erreur ou d’avertissement lorsque ce problème se produit. Pour résoudre ce problème, ajoutez le code du contrôle manuellement.

Contrôle d’animation
Contrôle personnalisé
Sélecteur d’heure de date
Zone de liste déroulante étendue

Touche à chaud
Contrôle d’adresse IP
Contrôle de liste
Month Calendar

Contrôle de progression
Contrôle Rich Edit 2.0
Contrôle d’édition enrichie
Contrôle Curseur

Contrôle spin
Contrôle Tab
Contrôle d’arborescence

Pour utiliser des contrôles courants dans une boîte de dialogue, vous devez appeler InitCommonControlsEx ou AFXInitCommonControls avant de créer la boîte de dialogue.

Pour utiliser des contrôles RichEdit, vous devez appeler LoadLibrary. Pour plus d’informations, consultez About Rich Edit Controls in the Windows SDK and Overview of the Rich Edit Control.

Remarque

Pour utiliser un contrôle RichEdit avec MFC, vous devez d’abord appeler AfxInitRichEdit2 pour charger le contrôle RichEdit 2.0 (RICHED20.DLL) ou appeler AfxInitRichEdit pour charger l’ancien contrôle RichEdit 1.0 (RICHED32.DLL).

Vous pouvez utiliser la classe CRichEditCtrl actuelle avec l’ancien contrôle RichEdit 1.0, mais CRichEditCtrl elle est conçue uniquement pour prendre en charge le contrôle RichEdit 2.0. Étant donné que RichEdit 1.0 et RichEdit 2.0 sont similaires, la plupart des méthodes fonctionnent. Toutefois, il existe des différences entre les contrôles 1.0 et 2.0. Certaines méthodes peuvent donc fonctionner de manière incorrecte ou ne fonctionnent pas du tout.

Insérer des contrôles ActiveX

Avec Visual Studio, vous pouvez insérer des contrôles ActiveX dans votre boîte de dialogue. Pour plus d’informations, consultez contrôles ActiveX MFC et conteneurs de contrôles ActiveX.

La boîte de dialogue Insérer un contrôle ActiveX vous permet d’insérer des contrôles ActiveX dans votre boîte de dialogue lors de l’utilisation de l’éditeur de boîte de dialogue. Cette boîte de dialogue contient les propriétés suivantes :

Propriété Description
Contrôle ActiveX Affiche la liste des contrôles ActiveX.

L’insertion d’un contrôle à partir de cette boîte de dialogue ne génère pas de classe wrapper. Si vous avez besoin d’une classe wrapper, utilisez la vue de classe pour en créer une, consultez Ajout d’une classe.

Si un contrôle ActiveX n’apparaît pas dans cette boîte de dialogue, essayez d’installer le contrôle en fonction des instructions du fournisseur.
Chemin d’accès Affiche le fichier dans lequel le contrôle ActiveX est trouvé.

Attention

Il se peut que la distribution de tous les contrôles ActiveX sur votre système ne soit pas autorisée juridiquement. Reportez-vous au contrat de licence pour le logiciel qui a installé les contrôles ou contactez l’entreprise logicielle.

Pour ajouter un contrôle ActiveX

  1. Ouvrez une boîte de dialogue dans l’Éditeur de boîte de dialogue.

  2. Cliquez avec le bouton droit n’importe où dans le corps de la boîte de dialogue, puis sélectionnez Insérer un contrôle ActiveX.

    La boîte de dialogue Insérer un contrôle ActiveX apparaît et affiche tous les contrôles ActiveX disponibles sur votre système. En bas de la boîte de dialogue figure le chemin d’accès au fichier de contrôle ActiveX.

  3. Sélectionnez le contrôle que vous souhaitez ajouter à votre boîte de dialogue, puis choisissez OK.

    Le contrôle apparaît dans la boîte de dialogue, où vous pouvez le modifier ou créer des gestionnaires comme vous le feriez pour n’importe quel autre contrôle.

Conseil

Vous pouvez utiliser le menu contextuel dans l’Éditeurde boîte de dialogue pour ajouter rapidement des contrôles ActiveX inscrits à une boîte de dialogue ou essayer d’ajouter des contrôles ActiveX à la fenêtre Boîte à outils pour faciliter l’accès.

Pour modifier les propriétés d’un contrôle ActiveX

Les contrôles ActiveX fournis par des fournisseurs indépendants peuvent être équipés de leurs propres propriétés et caractéristiques. Ces propriétés sont affichées dans la fenêtre Propriétés . Toutes les pages de propriétés créées par les enregistreurs du contrôle ActiveX sont affichées dans la boîte de dialogue Pages de propriétés. (Pour afficher le Page de propriétés pour un contrôle ActiveX spécifique, sélectionnez le bouton Page de propriétés dans le Fenêtre Propriétés).

  • Sélectionnez le contrôle ActiveX et accédez à la page Afficher la propriété de>menu pour afficher les propriétés. Apportez des modifications en fonction des besoins dans la page de propriétés.

    Différents onglets sont affichés dans la page de propriétés d’un contrôle ActiveX, en fonction des feuilles de propriétés qui font partie du contrôle ActiveX.

Remarque

Cette procédure s’applique à l’utilisation de la page de propriétés pour modifier les contrôles ActiveX. Vous pouvez également parcourir et modifier les propriétés ActiveX dans la nouvelle fenêtre Propriétés .

Spécifications

Win32

Voir aussi

Gérer les contrôles de boîte de dialogue
Procédure : contrôles de disposition
Guide pratique pour définir l’accès et les valeurs de contrôle