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
Creare un oggetto COleDataSource.
Passare questa origine dati a una funzione che aggiunge i formati dati nativi nell'elenco di formati supportati chiamando COleDataSource::CacheGlobalData.
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.