Appunti: Aggiunta di altri formati

In questo argomento viene illustrato come espandere l'elenco dei formati supportati, in particolare per il supporto di OLE.L'argomento Appunti: Copiando e incollando dati descritta l'implementazione minima necessaria per supportare la copia e incolla dagli Appunti.Se questo è tutto distribuite, i soli formati inseriti negli Appunti è CF_METAFILEPICT, CF_EMBEDSOURCE, CF_OBJECTDESCRIPTORed eventualmente CF_LINKSOURCE.La maggior parte delle applicazioni saranno necessari più formati negli Appunti che questi tre.

Registrare i formati personalizzati

Per creare i propri formati personalizzate, seguire la stessa routine che a durante la registrazione di qualsiasi formato degli Appunti personalizzato: passare il nome del formato alla funzione di RegisterClipboardFormat e utilizzare il valore restituito come l'identificatore di formato

Posizionare i formati negli Appunti

Per aggiungere più formati a quelli inseriti negli Appunti, è necessario eseguire l'override della funzione di OnGetClipboardData nella classe derivata da COleClientItem o da COleServerItem (a seconda che i dati copiati native).In questa funzione, è necessario seguire la procedura riportata di seguito.

Per posizionare i formati negli Appunti

  1. Creare un oggetto COleDataSource.

  2. Passare questa origine dati a una funzione che aggiunge i formati dati nativi nell'elenco di formati supportati chiamando COleDataSource::CacheGlobalData.

  3. Aggiungere i formati standard chiamando COleDataSource::CacheGlobalData per ogni formato standard che si desidera supportare.

Questa tecnica viene utilizzata nel programma di esempio HIERSVR OLE MFC (esaminare la funzione membro di OnGetClipboardData della classe di CServerItem ).L'unica differenza in questo esempio è che punto tre non è implementato in quanto HIERSVR non supporta altri formati standard.

838a3whf.collapse_all(it-it,VS.110).gifScegliere l'argomento su cui visualizzare maggiori informazioni

Vedere anche

Riferimenti

Appunti: Utilizzando il meccanismo di Appunti OLE