COlePasteSpecialDialog (clase)
Se utiliza en el cuadro de diálogo Pegado especial de OLE.
Sintaxis
class COlePasteSpecialDialog : public COleDialog
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
COlePasteSpecialDialog::COlePasteSpecialDialog | Construye un objeto COlePasteSpecialDialog . |
Métodos públicos
Nombre | Descripción |
---|---|
COlePasteSpecialDialog::AddFormat | Agrega formatos personalizados a la lista de formatos que la aplicación puede pegar. |
COlePasteSpecialDialog::AddLinkEntry | Agrega una nueva entrada a la lista de formatos de Portapapeles admitidos. |
COlePasteSpecialDialog::AddStandardFormats | Agrega CF_BITMAP, CF_DIB, CF_METAFILEPICT y, opcionalmente, CF_LINKSOURCE a la lista de formatos que la aplicación puede pegar. |
COlePasteSpecialDialog::CreateItem | Crea el elemento en el documento contenedor con el formato especificado. |
COlePasteSpecialDialog::DoModal | Muestra el cuadro de diálogo Pegado especial de OLE. |
COlePasteSpecialDialog::GetDrawAspect | Indica si se debe dibujar el elemento como un icono o no. |
COlePasteSpecialDialog::GetIconicMetafile | Obtiene un identificador del metarchivo asociado a la forma de icono de este elemento. |
COlePasteSpecialDialog::GetPasteIndex | Obtiene el índice de las opciones de pegado disponibles elegidas por el usuario. |
COlePasteSpecialDialog::GetSelectionType | Obtiene el tipo de selección elegido. |
Miembros de datos públicos
Nombre | Descripción |
---|---|
COlePasteSpecialDialog::m_ps | Estructura de tipo OLEUIPASTESPECIAL que controla la función del cuadro de diálogo. |
Comentarios
Cree un objeto de clase COlePasteSpecialDialog
cuando quiera llamar a este cuadro de diálogo. Una vez construido un objeto COlePasteSpecialDialog
, puede usar las funciones miembro AddFormat y AddStandardFormats para agregar formatos de Portapapeles al cuadro de diálogo. También puede usar la estructura m_ps para inicializar los valores o estados de los controles en el cuadro de diálogo. La estructura m_ps
es de tipo OLEUIPASTESPECIAL.
Para más información, consulte la estructura OLEUIPASTESPECIAL en Windows SDK.
Para más información sobre los cuadros de diálogo específicos de OLE, consulte el artículo Cuadros de diálogo en OLE.
Jerarquía de herencia
COlePasteSpecialDialog
Requisitos
Encabezado: afxodlgs.h
COlePasteSpecialDialog::AddFormat
Llame a esta función para agregar nuevos formatos a la lista de formatos que la aplicación puede admitir en una operación de pegado especial.
void AddFormat(
const FORMATETC& formatEtc,
LPTSTR lpszFormat,
LPTSTR lpszResult,
DWORD flags);
void AddFormat(
UINT cf,
DWORD tymed,
UINT nFormatID,
BOOL bEnableIcon,
BOOL bLink);
Parámetros
fmt
Referencia al tipo de datos que se va a agregar.
lpszFormat
Cadena que describe el formato al usuario.
lpszResult
Cadena que describe el resultado si se elige este formato en el cuadro de diálogo.
flags
Las distintas opciones de vinculación e inserción disponibles para este formato. Esta marca es una combinación bit a bit de uno o varios de los distintos valores del tipo enumerado OLEUIPASTEFLAG.
cf
Formato del Portapapeles que se va a agregar.
tymed
Los tipos de elementos multimedia disponibles en este formato. Se trata de una combinación bit a bit de uno o varios de los valores del tipo enumerado TYMED.
nFormatID
Id. de la cadena que identifica este formato. El formato de esta cadena es dos cadenas independientes separadas por un carácter "\n". La primera cadena es la misma que se pasaría en el parámetro lpstrFormat y la segunda es la misma que la del parámetro lpstrResult.
bEnableIcon
Marca que determina si la casilla Mostrar como icono se habilita cuando se elige este formato en el cuadro de lista.
bLink
Marca que determina si el botón de radio Pegar vínculo se habilita cuando se elige este formato en el cuadro de lista.
Comentarios
Se puede llamar a esta función para agregar formatos estándar, como CF_TEXT o CF_TIFF o formatos personalizados que la aplicación ha registrado en el sistema. Para más información sobre cómo pegar objetos de datos en la aplicación, consulte el artículo Objetos de datos y orígenes de datos: manipulación.
Para más información, vea el tipo de enumeración TYMED y la estructura FORMATETC en Windows SDK.
Para más información, vea el tipo enumerado OLEUIPASTEFLAG en Windows SDK.
COlePasteSpecialDialog::AddLinkEntry
Agrega una nueva entrada a la lista de formatos de Portapapeles admitidos.
OLEUIPASTEFLAG AddLinkEntry(UINT cf);
Parámetros
cf
Formato del Portapapeles que se va a agregar.
Valor devuelto
Estructura OLEUIPASTEFLAG que contiene la información de la nueva entrada de vínculo.
COlePasteSpecialDialog::AddStandardFormats
Llame a esta función para agregar los siguientes formatos del Portapapeles a la lista de formatos que la aplicación puede admitir en una operación de pegado especial:
void AddStandardFormats(BOOL bEnableLink = TRUE);
Parámetros
bEnableLink
Marca que determina si se va a agregar CF_LINKSOURCE a la lista de formatos que la aplicación puede pegar.
Comentarios
CF_BITMAP
CF_DIB
CF_METAFILEPICT
"Objeto insertado"
(Opcionalmente) "Origen del vínculo"
Estos formatos se usan para admitir la inserción y la vinculación.
COlePasteSpecialDialog::COlePasteSpecialDialog
Construye un objeto COlePasteSpecialDialog
.
COlePasteSpecialDialog(
DWORD dwFlags = PSF_SELECTPASTE,
COleDataObject* pDataObject = NULL,
CWnd* pParentWnd = NULL);
Parámetros
dwFlags
La marca de creación contiene cualquier número de las siguientes marcas, combinadas mediante el operador OR bit a bit:
PSF_SELECTPASTE especifica que el botón de radio Pegar se seleccionará inicialmente cuando se llame al cuadro de diálogo. No se puede usar en combinación con PSF_SELECTPASTELINK. Este es el valor predeterminado.
PSF_SELECTPASTELINK especifica que el botón de radio Pegar vínculo se seleccionará inicialmente cuando se llame al cuadro de diálogo. No se puede usar en combinación con PSF_SELECTPASTE.
PSF_CHECKDISPLAYASICON especifica que la casilla Mostrar como icono se seleccionará inicialmente cuando se llame al cuadro de diálogo.
PSF_SHOWHELP especifica que se mostrará el botón Ayuda cuando se llame al cuadro de diálogo.
pDataObject
Apunta a COleDataObject para el pegado. Si este valor es NULL, obtiene COleDataObject
del Portapapeles.
pParentWnd
Apunta al objeto de ventana primaria o propietaria (de tipo CWnd
) al que pertenece el objeto de cuadro de diálogo. Si es NULL, la ventana primaria del cuadro de diálogo se establece en la ventana principal de la aplicación.
Comentarios
Esta función solo construye un objeto COlePasteSpecialDialog
. Para mostrar el cuadro de diálogo, llame a la función DoModal.
Para más información, vea el tipo enumerado OLEUIPASTEFLAG en Windows SDK.
COlePasteSpecialDialog::CreateItem
Crea el nuevo elemento elegido en el cuadro de diálogo Pegado especial.
BOOL CreateItem(COleClientItem* pNewItem);
Parámetros
pNewItem
Apunta a una instancia de COleClientItem
. No puede ser NULL.
Valor devuelto
Distinto de cero si el elemento se creó correctamente; en caso contrario, 0.
Comentarios
Solo se debe llamar a esta función después de que DoModal devuelva IDOK.
COlePasteSpecialDialog::DoModal
Muestra el cuadro de diálogo Pegado especial de OLE.
virtual INT_PTR DoModal();
Valor devuelto
Estado de finalización del cuadro de diálogo. Uno de los siguientes valores:
IDOK si el cuadro de diálogo se mostró correctamente.
IDCANCEL si el usuario canceló el cuadro de diálogo.
IDABORT si se produjo un error. Si se devuelve IDABORT, llame a la función miembro
COleDialog::GetLastError
para obtener más información sobre el tipo de error que se produjo. Para ver una lista de posibles errores, consulte la función OleUIPasteSpecial en Windows SDK.
Comentarios
Si quiere inicializar los distintos controles de cuadro de diálogo estableciendo miembros de la estructura m_ps, debe hacerlo antes de llamar a DoModal
, pero después de construir el objeto de cuadro de diálogo.
Si DoModal
devuelve IDOK, puede llamar a otras funciones miembro para recuperar la configuración o la información que especificó el usuario en el cuadro de diálogo.
COlePasteSpecialDialog::GetDrawAspect
Determina si el usuario eligió mostrar el elemento seleccionado como un icono.
DVASPECT GetDrawAspect() const;
Valor devuelto
Método necesario para representar el objeto.
DVASPECT_CONTENT, se devuelve si la casilla Mostrar como icono no estaba seleccionada cuando se descartó el cuadro de diálogo.
DVASPECT_ICON, se devuelve si la casilla Mostrar como icono estaba seleccionada cuando se descartó el cuadro de diálogo.
Comentarios
Llame solo a esta función después de que DoModal devuelva IDOK.
Para más información sobre el aspecto de dibujo, consulte la estructura FORMATETC en Windows SDK.
COlePasteSpecialDialog::GetIconicMetafile
Obtiene el metarchivo asociado al elemento seleccionado por el usuario.
HGLOBAL GetIconicMetafile() const;
Valor devuelto
Identificador del metarchivo que contiene el aspecto de icono del elemento seleccionado, si la casilla Mostrar como icono estaba seleccionada cuando se descartó el cuadro de diálogo mediante Aceptar; en caso contrario, NULL.
COlePasteSpecialDialog::GetPasteIndex
Obtiene el valor de índice asociado a la entrada seleccionada por el usuario.
int GetPasteIndex() const;
Valor devuelto
Índice en la matriz de estructuras OLEUIPASTEENTRY
que seleccionó el usuario. El formato que corresponde al índice seleccionado se debe usar al realizar la operación de pegado.
Comentarios
Para más información, consulte la estructura OLEUIPASTEENTRY en Windows SDK.
COlePasteSpecialDialog::GetSelectionType
Determina el tipo de selección que realizó el usuario.
UINT GetSelectionType() const;
Valor devuelto
Devuelve el tipo de selección realizada.
Comentarios
Los valores de tipo de valor devuelto los especifica el tipo de enumeración Selection
declarado en la clase COlePasteSpecialDialog
.
enum Selection {
pasteLink,
pasteNormal,
pasteOther,
pasteStatic
};
A continuación, se describen brevemente estos valores:
COlePasteSpecialDialog::pasteLink
Se ha seleccionado el botón de radio Pegar vínculo y el formato elegido es un formato OLE estándar.COlePasteSpecialDialog::pasteNormal
Se ha seleccionado el botón de radio Pegar y el formato elegido es un formato OLE estándar.COlePasteSpecialDialog::pasteOther
El formato seleccionado no es un formato OLE estándar.COlePasteSpecialDialog::pasteStatic
El formato elegido era un metarchivo.
COlePasteSpecialDialog::m_ps
Estructura de tipo OLEUIPASTESPECIAL usada para controlar el comportamiento del cuadro de diálogo Pegado especial.
OLEUIPASTESPECIAL m_ps;
Comentarios
Los miembros de esta estructura se pueden modificar directamente o a través de funciones miembro.
Para más información, consulte la estructura OLEUIPASTESPECIAL en Windows SDK.
Consulte también
Ejemplo MFC de OCLIENT
COleDialog (clase)
Gráfico de jerarquías
COleDialog (clase)