Partager via


Presse-papiers : ajout d’autres formats

Cette rubrique explique comment développer la liste des formats pris en charge, en particulier pour la prise en charge d’OLE. Le Presse-papiers de la rubrique : Copier et coller des données décrit l’implémentation minimale nécessaire pour prendre en charge la copie et le collage à partir du Presse-papiers. Si c’est tout ce que vous implémentez, les seuls formats placés dans le Presse-papiers sont CF_METAFILEPICT, CF_EMo EDSOURCE, CF_OBJECTDESCRIPTOR et éventuellement CF_LINKSOURCE. La plupart des applications auront besoin de plus de formats dans le Presse-papiers que ces trois derniers.

Inscription de formats personnalisés

Pour créer vos propres formats personnalisés, suivez la même procédure que celle que vous utilisez lors de l’inscription d’un format presse-papiers personnalisé : passez le nom du format à la fonction RegisterClipboardFormat et utilisez sa valeur de retour comme ID de format.

Placement de formats dans le Presse-papiers

Pour ajouter d’autres formats à ceux placés dans le Presse-papiers, vous devez remplacer la OnGetClipboardData fonction dans la classe à partir de laquelle COleClientItem vous avez dérivé ou COleServerItem (selon que les données à copier sont natives). Dans cette fonction, vous devez utiliser la procédure suivante.

Pour placer des formats dans le Presse-papiers

  1. Créez un objet COleDataSource.

  2. Transmettez cette source de données à une fonction qui ajoute vos formats de données natifs à la liste des formats pris en charge en appelant COleDataSource::CacheGlobalData.

  3. Ajoutez des formats standard en appelant COleDataSource::CacheGlobalData chaque format standard que vous souhaitez prendre en charge.

Cette technique est utilisée dans l’exemple de programme OLE MFC HIERSVR (examinez la OnGetClipboardData fonction membre de la classe CServerItem ). La seule différence dans cet exemple est que l’étape 3 n’est pas implémentée, car HIERSVR ne prend pas en charge d’autres formats standard.

Que voulez-vous en savoir plus sur

Voir aussi

Presse-papiers : utilisation du mécanisme de Presse-papiers OLE