Estructura OLEUIPASTESPECIALA (oledlg.h)
Contiene información que usa la biblioteca de interfaz de usuario OLE para inicializar el cuadro de diálogo Pegar especial, así como espacio para que la biblioteca devuelva información cuando se descarta el cuadro de diálogo.
Sintaxis
typedef struct tagOLEUIPASTESPECIALA {
DWORD cbStruct;
DWORD dwFlags;
HWND hWndOwner;
LPCSTR lpszCaption;
LPFNOLEUIHOOK lpfnHook;
LPARAM lCustData;
HINSTANCE hInstance;
LPCSTR lpszTemplate;
HRSRC hResource;
LPDATAOBJECT lpSrcDataObj;
LPOLEUIPASTEENTRYA arrPasteEntries;
int cPasteEntries;
UINT *arrLinkTypes;
int cLinkTypes;
UINT cClsidExclude;
LPCLSID lpClsidExclude;
int nSelectedIndex;
BOOL fLink;
HGLOBAL hMetaPict;
SIZEL sizel;
} OLEUIPASTESPECIALA, *POLEUIPASTESPECIALA, *LPOLEUIPASTESPECIALA;
Miembros
cbStruct
Tamaño de la estructura, en bytes. Este miembro debe rellenarse en la entrada.
dwFlags
En la entrada, dwFlags especifica las marcas de inicialización y creación. Al salir, especifica las opciones del usuario. Puede ser una combinación de las marcas siguientes.
Valor | Significado |
---|---|
|
El cuadro de diálogo mostrará un botón Ayuda. |
|
El botón de radio Pegar |
|
El botón de radio PasteLink se seleccionará en el inicio del cuadro de diálogo. Además, especifica el estado del botón en la finalización del cuadro de diálogo. Marca IN/OUT. |
|
Indica si el icono mostrar como botón de radio se ha activado al finalizar el cuadro de diálogo. Marca OUT. |
|
La casilla mostrar como icono se deshabilitará al inicializar. |
|
Se usa para deshabilitar el botón cambiar icono en el cuadro de diálogo, que está disponible para los usuarios cuando pegan un objeto OLE de forma predeterminada. Vea STAYONCLIPBOARDCHANGE. |
|
Se usa para indicar al cuadro de diálogo que permanezca al día si el Portapapeles cambia mientras el cuadro de diálogo está arriba. Si el usuario cambia a otra aplicación y copia o corta algo, el cuadro de diálogo realizará, de forma predeterminada, una operación de cancelación, que quitará el cuadro de diálogo, ya que las opciones que se encuentran en medio de la presentación al usuario ya no se up-to-date con respecto a lo que realmente está en el Portapapeles. |
|
Se usa junto con STAYONCLIPBOARDCHANGE (no hace nada de lo contrario). Si el Portapapeles cambia mientras el cuadro de diálogo está arriba y se especifica el STAYONCLIPBOARDCHANGE, NOREFRESHDATAOBJECT indica que el cuadro de diálogo NO debe actualizar el contenido del cuadro de diálogo para reflejar el nuevo contenido del Portapapeles. Esto resulta útil si la aplicación usa el cuadro de diálogo especial pegar en un IDataObject además del del portapapeles, por ejemplo, como parte de una operación de arrastrar y colocar con el botón derecho. |
hWndOwner
Ventana propietaria del cuadro de diálogo. Este miembro no debe ser null.
lpszCaption
Puntero a una cadena que se va a usar como título del cuadro de diálogo. Si null, la biblioteca usa Pegarespecial .
lpfnHook
Puntero a una función de enlace que procesa los mensajes destinados al cuadro de diálogo. La función de enlace debe devolver cero para pasar un mensaje que no se procesó de nuevo al procedimiento del cuadro de diálogo de la biblioteca. La función de enlace debe devolver un valor distinto de cero para evitar que el procedimiento del cuadro de diálogo de la biblioteca procese un mensaje que ya haya procesado.
lCustData
Datos definidos por la aplicación a los que la biblioteca pasa a la función de enlace a la que apunta el miembro de lpfnHook. La biblioteca pasa un puntero a la estructura
hInstance
Instancia que contiene una plantilla de cuadro de diálogo especificada por el miembro lpTemplateName.
lpszTemplate
Puntero a una cadena terminada en null que especifica el nombre del archivo de recursos para la plantilla del cuadro de diálogo que se va a sustituir por la plantilla de cuadro de diálogo pegar especial de la biblioteca.
hResource
Identificador de plantilla personalizado.
lpSrcDataObj
Puntero al IDataObject interfaz del objeto de datos que se va a pegar (desde el Portapapeles). Este miembro se rellena en la entrada. Si
arrPasteEntries
Matriz
cPasteEntries
Número de entradas de matriz OLEUIPASTEENTRY. Este miembro se rellena en la entrada.
arrLinkTypes
Lista de tipos de vínculo que son aceptables. Se hace referencia a los tipos de vínculo mediante OLEUIPASTEFLAG en arrPasteEntries. Este miembro se rellena en la entrada.
cLinkTypes
Número de tipos de vínculo. Este miembro se rellena en la entrada.
cClsidExclude
Número de CLSID en lpClsidExclude. Este miembro se rellena en la entrada.
lpClsidExclude
Puntero a una matriz de CLSID para excluir de la lista de objetos de servidor disponibles para una operación Paste. Tenga en cuenta que esto no afecta a Pegar vínculo. Una aplicación puede impedir la inserción en sí misma enumerando su propio CLSID en esta lista. Este campo se rellena en la entrada.
nSelectedIndex
Índice de arrPasteEntries que seleccionó el usuario. Este miembro se rellena en la salida.
fLink
El usuario seleccionó Pegar o Pegar vínculo. Este miembro se rellena en la salida.
hMetaPict
Controla el metarchivo que contiene el icono y el título del icono seleccionado por el usuario. Este miembro se rellena en la salida.
sizel
Tamaño del objeto tal como se muestra en su origen, si el aspecto de visualización elegido por el usuario coincide con el aspecto mostrado en el origen. Si el usuario elige un aspecto diferente, sizel.cx y sizel.cy se establecen en cero. El tamaño del objeto tal y como se muestra en el origen se recupera del objectDescriptor si fLink es FALSE y desde linkSrcDescriptor si fLink es TRUE. Este miembro se rellena en la salida.
Observaciones
Nota
El encabezado oledlg.h define OLEUIPASTESPECIAL como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 2000 Professional [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows 2000 Server [solo aplicaciones de escritorio] |
encabezado de |
oledlg.h |