Partager via


Menus et ressources : ajouts de conteneur

Cet article explique les modifications qui doivent être apportées aux menus et d'autres ressources dans une application conteneur d'édition visuelle.

Dans les applications conteneur, deux types de modifications doivent être apportées : modifications apportées aux ressources existantes pour prendre en charge la notion de modification sur place et l'ajout de nouvelles ressources utilisées pour l'activation sur place.Si vous utilisez l'Assistant Application pour créer votre application conteneur, ces étapes sont effectuées automatiquement, mais elles peuvent nécessiter de la personnalisation.

Si vous n'utilisez pas l'Assistant Application, vous pouvez consulter OCLIENT.RC, le script de ressources pour l'exemple d'application OCLIENT, pour voir comment ces modifications sont implémentées.Consultez l'exemple de liaison et incorporation d'objets MFC OCLIENT.

Les rubriques abordées dans cet article incluent :

  • Ajouts de menu de conteneur

  • Ajouts de table d'accélérateurs

  • Ajouts de table de chaînes

Ajouts de menu de conteneur

Vous devez ajouter les éléments suivants au menu Edition :

Élément

Objectif

Nouvel objet d'insertion

Ouvre la notion de boîte de dialogue d'objet d'insertion pour insérer un élément lié ou incorporé dans le document.

Lien de collage

Colle un lien vers un élément du presse-papiers dans le document.

OLE verbe

Appelle le verbe principal de l'élément sélectionné.Le texte de cet élément de menu change pour refléter le verbe principal de l'élément sélectionné.

Liens

Ouvre la notion de boîte de dialogue de Modifier les liens pour modifier les éléments liés existants.

Outre les modifications répertoriés de cet article, votre fichier source doit inclure AFXOLECL.RC, qui est requis pour l'implémentation de la bibliothèque MFC.Le nouvel objet d'insertion est le seul ajout requis de menu.D'autres éléments peuvent être ajoutés, mais ces répertoriés ici sont plus courantes.

Vous devez créer un nouveau menu pour votre application conteneur si vous souhaitez prendre en charge l'activation sur place les éléments contenus.Ce menu inclut le même menu Fichier et les menus contextuels de fenêtre est utilisé lorsque les fichiers sont ouverts, mais il a deux séparateurs placés entre eux.Ces délimiteurs sont utilisés pour indiquer où l'élément de serveur (composant) (application) doit placer ses menus une fois activé en place.Pour plus d'informations sur cette technique de fusion de menus, consultez menus et ressources : fusion de menus.

Ajouts de table d'accélérateurs d'application conteneur

Les petites modifications aux ressources en table d'accélérateurs d'application conteneur sont nécessaires si vous prenez en charge l'activation sur place.La première modification permet à l'utilisateur d'appuyer sur la touche ESCAPE pour quitter le mode d'édition visuelle.Ajoutez l'entrée suivante à la table d'accélérateurs clé :

ID

Clé

Type

ID_CANCEL_EDIT_CNTR

VK_ESCAPE

VIRTKEY

La seconde modification est de créer une nouvelle table d'accélérateurs qui correspond à la nouvelle ressource menu créée pour l'activation sur place.Cette table contient des entrées du fichier et des menus Fenêtre en plus de l'entrée de VK_ESCAPE ci-dessus.L'exemple suivant est la table d'accélérateurs créée pour l'activation sur place dans l'exemple CONTAINERMFC :

ID

Clé

Type

ID_FILE_NEW

CTRL+N

VIRTKEY

ID_FILE_OPEN

CTRL+O

VIRTKEY

ID_FILE_SAVE

CTRL+S

VIRTKEY

ID_FILE_PRINT

CTRL+P

VIRTKEY

ID_NEXT_PANE

VK_F6

VIRTKEY

ID_PREV_PANE

SHIFT+VK_F6

VIRTKEY

ID_CANCEL_EDIT_CNTR

VK_ESCAPE

VIRTKEY

Ajouts de table de chaînes pour les applications conteneur

La plupart des modifications aux tables de chaînes pour les applications conteneur correspondent à des éléments de menu supplémentaires mentionnés dans ajouts de menu de conteneur.Ils fournissent le texte affiché dans la barre d'état lorsque chaque élément de menu est affiché.Par exemple, voici les entrées de table de chaînes que l'Assistant Application génère :

ID

Chaîne

IDP_OLE_INIT_FAILED

Échec de l'initialisation d'OLE.Assurez-vous que vous utilisez la bonne version des bibliothèques OLE.

IDP_FAILED_TO_CREATE

Échec de création d'un objet.Assurez-vous que l'objet est écrit dans la base de registres.

Voir aussi

Concepts

Menus et ressources (OLE)

Menus et ressources : ajouts de serveur