Está en la página 1de 27

7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

ENEstaEste
documentación
contenido no seestá archivada
encuentra y no en
disponible tiene mantenimiento.
su idioma, pero aquí tiene la versión en inglés.

Personalizar la cinta de 2007 Office Fluent


para desarrolladores (parte 3 de 3)
Office 2007

Resumen: Este artículo es el compañero de la parte uno y parte dos artículos del mismo nombre. Este artículo contiene una
lista de preguntas frecuentes con respecto a la interfaz de usuario Microsoft Office Fluent. (33 páginas impresas)

Frank Rice, Microsoft Corporation

Ken Getz, MCW Technologies, LLC

Publicado: Mayo de 2006

Actualizado: Mayo de 2008

Se aplica a: Microsoft Office Access 2007, Microsoft Office Excel 2007, Microsoft Office PowerPoint 2007, Microsoft Office
Outlook 2007, Microsoft Office Word 2007, Microsoft Visual Studio 2005 Tools para 2007 Microsoft Office System, Microsoft
Visual Studio 2005

Contenido

La cinta de opciones y la interfaz de usuario Fluent de Office

Preguntas más frecuentes sobre la interfaz de usuario fluida cinta y oficina

Conclusión

Recursos adicionales

La cinta de opciones y la interfaz de usuario Fluent de Office


La cinta es una parte de la nueva interfaz de usuario Microsoft Office Fluent (UI) para algunas de las aplicaciones en la
versión 2007 de Microsoft Office, incluyendo Microsoft Office Access 2007, Microsoft Office Excel 2007, Microsoft Office
Outlook 2007 y Microsoft Office Word 2007. La interfaz de usuario Fluent de oficina es una salida del sistema de menús,
barras de herramientas y cuadros de diálogo que formaban parte de versiones anteriores de Office.

Preguntas más frecuentes sobre la interfaz de usuario fluida cinta y


oficina
Estas son algunas de las preguntas que se hacen más frecuentemente acerca de cómo personalizar la interfaz de usuario
fluida.
https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 1/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Cuando me mudé a Beta 2 TR, noté algunas diferencias en los nombres de los elementos. ¿Qué,
específicamente?
El elemento < avanzada > fue renombrado a < dialogBoxLauncher >. La < fileMenu >< id menú = "fileMenu" >
elemento fue retitulado a < officeMenu >. Una devolución de llamada loadImage fue agregado con las siguientes
Esta documentación está archivada y no tiene mantenimiento.
firmas.

C#

public object loadImage(string imageId)

Además, muchos de los valores de idMso cambiaron.

¿Cómo expones el ID interno de controles incorporados?


Puede ver cada valor individual idMso dentro de las aplicaciones mediante el procedimiento siguiente.

Para encontrar el valor de idMso para una aplicación

1. Haga clic en el Botón de Microsoft Officey haga clic en Opciones de la aplicación.

2. Haga clic en personalizary seleccione el elemento que desee información sobre.

3. Mueva el puntero sobre el elemento. El cuadro de diálogo muestra el valor del control idMso en información en
pantalla, entre paréntesis.

¿Qué son el control ID para los controles que tengo que desactivar o reutilizar?
Hay un conjunto de controles de la cinta cuyo ID de control publicados no es los mismos como control IDs que se debe
utilizar para su desactivación/reasignación. Esto es debido a cómo estos controles específicos se implementan
internamente. Estos inéditos identificadores sólo se aplican a la sección < comandos > del XML usado para definir la cinta
cuando reasignación y desactivar los comandos de control. Para otros escenarios (insertar controles con
insertAfterMso/insertBeforeMso, clonación controles con < control idMso ="" / >, la reutilización de imágenes con
imageMsoy así sucesivamente), el publicado control ID es la identificación correcta.

La tabla siguiente enumeran los afectados IDs, la segunda columna es el ID de control publicados, y la tercera columna es
el ID que debe utilizarse para inutilizar o reutilizar los controles.

Tabla 1. Identificadores de control para deshabilitar y reasignación de controles

Identificador de control para


Tipo de control ID control
deshabilitar/reasignación

botón AlternativeText ObjectSizeAndPropertiesDialog

Galería Drawing1ColorPickerFill ShapeFillColorPicker

Galería Drawing1ColorPickerFillWordArt ShapeFillColorPicker

Galería Drawing1ColorPickerLineStyles OutlineColorPicker

Galería Drawing1ColorPickerLineStylesWord OutlineColorPicker


Art

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 2/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Galería Drawing1GalleryBrightness PictureBrightnessGallery

Galería Drawing1GalleryContrast PictureContrastGallery

Galería Drawing1GalleryTextures ShapeFillTextureGallery


Esta documentación está archivada y no tiene mantenimiento.
botón FileSaveAsOtherFormats FileSaveAs

Galería GalleryAllShapesAndCanvas ShapesInsertGallery

Galería GalleryAllShapesAndTextboxes ShapesInsertGallery

casilla de GridlinesExcel ViewSheetGridlines


verificación

Galería InsertBuildingBlocksEquationsGallery EquationInsertGallery

Galería PictureBorderColorPickerClassic OutlineColorPicker

Galería PictureShapeGallery ShapeChangeShapeGallery

botón PlayMacro MacroPlay

Galería ShapeOutlineColorPicker OutlineColorPicker

Galería ShapeQuickStylesHome ShapeStylesGallery

casilla de ShowRuler ViewRulerWord


verificación

Galería TableTextStylesGallery TextStylesGallery

botón UnmergeCells SplitCells

casilla de ViewGridlines ViewGridlinesPowerPoint


verificación

casilla de ViewHeadings ViewSheetHeadings


verificación

¿Cuáles son algunas de las limitaciones sobre los atributos que necesito saber acerca de?

El getShowImage, getShowlabel, showImage, showLabel atributos se omiten en los grandes controles.

Los atributos Descripción y getDescription sólo se aplican a los elementos de menú.

Los atributos getSize y tamaño no se aplican a los elementos de menú. En cambio el tamaño se basa en el tamaño
del artículo de menú.

Los atributos getVisible y visible se omiten elementos ButtonGroup y separador .

¿Mostrar mensajes de error de la interfaz de usuario fluida?


Puede controlar la pantalla de mensajes de error mediante el establecimiento de una opción general en cada aplicación.
https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 3/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Para mostrar mensajes de error para la interfaz de usuario Fluent

1. Haga clic en el Botón de Microsoft Officey haga clic en Opciones de la aplicación para mostrar el cuadro de
diálogo.

2. Haga clic en avanzadasy despues busque la sección General de las opciones.


Esta documentación está archivada y no tiene mantenimiento.
3. Seleccione Mostrar a usuario en errores de interfaz.

¿Cómo puedo cambiar la interfaz de usuario dinámicamente? Por ejemplo, desea actualizar
etiquetas e imágenes, ocultar y Mostrar botones o actualizar el contenido de una lista mientras
está funcionando mi código.
Consulte la sección "Dinámicamente actualizar la fluida interfaz de usuario" en el artículo personalizar la cinta de 2007
Office Fluent para desarrolladores (parte 1 de 3) .

En Excel 2007, no soy capaz de ejecutar macros desde la barra de herramientas de acceso rápido
o de la cinta cuando mi hoja de cálculo en la vista previa de impresión. ¿Es el comportamiento
esperado?
Sí, este es el comportamiento esperado. La capacidad de ejecutar macros en vista previa de impresión está deshabilitada
en Excel 2007. Por ejemplo, suponga que ha agregado un botón personalizado a la barra de herramientas de acceso
rápido. Si haga clic en el Botón de Microsoft Office, seleccione Imprimiry haga clic en Vista previa de impresión, la
hoja de cálculo actual se muestra en el modo de vista previa de impresión. Se desactivan los botones por defecto en la
barra de herramientas de acceso rápido. Si usted haga clic en el botón, no pasa nada; es decir, no se ejecuta ninguna
macro adjunta al botón y no se muestra ningún cuadro de diálogo.

¿Hay una manera para controlar mediante programación cómo la interfaz de usuario utilizado
por mi complemento escalas de tamaño como los controles son añadir o quitar?
Como grupos actualmente implementados, personalizados, no cambiar el tamaño de ellos mismos. Siguen siendo
grandes, consiguiendo con eficacia una prioridad más alta.

¿Hay una forma para restablecer la interfaz de usuario y eliminar todas las personalizaciones?
Sí. Para restablecer la interfaz de usuario, desinstalar tus complementos y cierre los documentos abiertos. Esto restaura el
valor predeterminado de interfaz de usuario.

¿Puedo cambiar dinámicamente el número de resultados en un control de la galería?


Sí. Dinámicamente puede llenar la galería mediante el suministro de las devoluciones de llamada para los atributos
getItemCount, getItemLabelo getItemImage .

¿Son controles personalizados en la interfaz de usuario Fluent apoyado?


No. Como alternativa, para escenarios que no son compatibles con los controles integrados, puede utilizar la característica
de panel de tareas personalizado para los controles personalizados. Puede encontrar más información en el artículo Crear
paneles de tareas de costumbre en la 2007 Office System .

¿Están todos los controles en las aplicaciones de Office disponibles para mis propias
personalizaciones?
No, algunos controles no están disponibles. Por ejemplo, el control de la splitButtonGallery no está disponible para las
personalizaciones. (Un ejemplo del control splitButtonGallery es el control de Color de resalte de texto en Word 2007).

¿Qué partes de la interfaz de usuario fluido no son personalizables mediante el nuevo modelo
de extensibilidad?

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 4/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

No puede personalizar la barra de estado, la minibarra de herramientas o menús contextuales, aunque se puede
personalizar menús contextuales utilizando el modelo de objeto de barras de comandos.

¿Puedo desactivar la barra de herramientas Mini?


Sí. El siguiente procedimiento proporciona los pasos.
Esta documentación está archivada y no tiene mantenimiento.
Para desactivar la barra de herramientas Mini

1. Haga clic en el Botón de Microsoft Officey haga clic en Opciones de la aplicación para mostrar el cuadro de
diálogo Opciones .

2. Haga clic en Popular.

3. Desactive la opción Mostrar minibarra de herramientas en la selección .

Mi solución de Microsoft Office Access 2003 oculta todos los menús de acceso y barras de
herramientas y muestra las barras de herramientas y menús personalizados. ¿Qué sucede
cuando los usuarios abren esta solución en Access 2007? ¿Mis menús personalizados y barras de
herramientas aparece en la ficha de complementos?
Access 2007 puede detectar cuando una aplicación de Access 2003 incluye la configuración para ocultar menús y barras
de herramientas y para mostrar las barras de herramientas y menús personalizados solamente. En este caso, Access 2007
no muestra los menús personalizados y barras de herramientas en la ficha Complementos .

¿Cómo funciona la personalización de interfaz de usuario Fluent adjunto XML en Access 2007?
¿Puedo guardar la interfaz de usuario personalizada en la base de datos? Si es así, ¿cómo?
Porque las bases de datos acceso a implementar la nueva estructura de archivo formatos de XML abierto de Office,
Microsoft Visual Basic para soluciones de aplicaciones (VBA) en Access almacenar generalmente su marcado en una tabla
en la base de datos. Crear una tabla denominada USysRibbons y guardar dos columnas (RibbonName, en un terreno de
255 caracteres y RibbonXml, un campo memo) que contienen nombres y marcado. Entonces puede seleccionar una cinta
por el nombre de la tabla, utilizando el cuadro de diálogo Opciones . También puede utilizar técnicas de manipulación de
datos estándar para leer el contenido del XML de una tabla y llame al método Application.LoadCustomUI para aplicar el
nuevo contenido de la cinta. Puede encontrar más información en el sitio Web de Office Fluent usuario interfaz Developer
Portal .

¿Qué sucede cuando dos complementos intentar reutilizar el mismo control incorporado?
El último complemento de que intenta reutilizar el control se convierte en el activado complemento de.

¿Puedo quitar mediante programación elementos de las galerías incorporadas?


Mediante programación no puede quitar elementos de galerías incorporados mediante extensibilidad. Usted puede ser
capaz de eliminar mediante el uso de modelo de objetos de la aplicación.

¿Puedo mediante programación personalizar la barra de herramientas de acceso rápido, al


menos en un escenario de inicio de scratch?
Sí. Puede personalizar la barra de herramientas de acceso rápido por establecer en trueel atributo startFromScratch del
elemento de la cinta. Sin embargo, recomendamos no personalizando la barra de herramientas de acceso rápido a menos
que haya una razón de buen negocio, esta función se significa realmente para personalización del usuario.

¿Cómo localizar mi interfaz de usuario?


Tienes dos opciones. Si utiliza COM, puede devolver diferentes archivos XML, basados en el lenguaje de interfaz de
usuario actual. Si utiliza VBA, puede tener varios archivos VBA para cada idioma, o puede tener una devolución de llamada
que devuelve la etiqueta adecuada para todos sus controles.

¿Puedo quitar el botón de Microsoft Office?


https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 5/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Usted puede desactivar u ocultar todos los elementos en el menú Botón de Microsoft Office , pero no se puede quitar el
botón de sí mismo.

¿Cómo escribo un VBA add-in que utiliza la interfaz de usuario fluida, pero que utiliza barras de
comandos en aplicaciones de Office 2003?
Esta documentación está archivada y no tiene mantenimiento.
Puede crear un documento VBA que utiliza la funcionalidad de Office 2003 y 2007 Microsoft Office system. Una manera de
hacer esto es comprobar la versión de Office, utilice la propiedad Application.Version . Si el valor es menos de "12" (para
2007 las aplicaciones de Office), ejecutar el código de barras de comandos. Su marcado XML con fluidez de interfaz de
usuario es ignorado por el convertidor que permite a un documento creado en una aplicación de Office 2007 para abrir en
una aplicación de Office 2003. Si el valor es "12", no necesita hacer ningún proceso especial. El archivo que contiene el
marcado XML con fluidez de interfaz de usuario se carga desde el archivo formatos de XML abierto de Office, y sus
devoluciones de llamada están disponibles.

No puedo utilizar extensibilidad para el control de la barra de estado. ¿Cómo ocultar mediante
programación la barra de estado?
Puede ocultar la barra de estado utilizando la siguiente línea de código.

VB

Application.CommandBars("Status Bar").Visible = False

¿Cómo se puede crear dos complementos que agregar elementos a la misma pestaña o grupo?
La propiedad de idQ de controles existe para permitir que múltiples complementos compartir contenedores, como las
fichas personalizadas y grupos.

En el siguiente ejemplo VBA, dos complementos de Excel comparten el mismo grupo de "Contoso" en la pestaña
complementos; cada uno agrega un botón a él. La clave es especificar el mismo espacio de nombres único en la etiqueta <
customUI > . A continuación, controles pueden hacer referencia a este espacio de nombres mediante el uso de idQ.

CustomUI para agregar en 1


XML

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"
xmlns:x="myNameSpace" >
<ribbon>
<tabs>
<tab idMso="TabAddIns">
<group idQ="x:Contoso" label="Contoso">
<button id="C1" label="Contoso Button 1" size="large"
imageMso="FileSave" onAction="c_action1" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>

CustomUI para agregar en 2


XML

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"
xmlns:x="myNameSpace" >
<ribbon>
<tabs>
<tab idMso="TabAddIns">

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 6/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

<group idQ="x:Contoso" label="Contoso">


<button id="C2" label="Contoso Button 2" size="large"
imageMso="FileSave" onAction="c_action2" />
</group>
</tab>
</tabs>
Esta documentación está archivada y no tiene mantenimiento.
</ribbon>
</customUI>

Si utilizas un COM add-in para personalizar la interfaz de usuario fluida, el nombre de espacio de nombres debe ser el
ProgID de la COM agregar-, pero el comportamiento si no es el mismo. Cuando se utiliza un compartido add-in, el
ProgID es AddInName. Conectar. Cuando utiliza Microsoft Visual Studio 2005 Tools para 2007 Microsoft Office System
(Visual Studio 2005 Tools para Office segunda edición) para crear el add-in, el ID es el nombre del complemento.

¿Cómo puedo asignar información sobre teclas para mis controles?


Información sobre teclas es los atajos de teclado que aparecen en la cinta de opciones al pulsar la tecla ALT. Puede
asignar su propia información sobre teclas mediante las teclas y getKeytip atributos. (El atributo getKeytip proporciona
el nombre de un procedimiento de devolución de llamada que proporciona las teclas).

Nota

Si la información sobre teclas entran en conflicto con los controles integrados o información sobre teclas de otros
complementos, se les pueden asignar valores no conflictivos automáticamente. Información sobre teclas para grupos,
como regla general, debe comenzar con la letra "Z".

(Solo VBA) Si dos documentos tienen las mismas firmas de devolución de llamada, se llaman las
devoluciones de llamada del documento activo. ¿Cómo me aseguro de que mi interfaz de
usuario llama sólo las devoluciones de llamadas asociados con mi documento?
Este es un tema que también estuvo presente en Office 2003. Como solución, puede hacer su solución nombre o nombres
de devolución de llamada únicos mediante la adición de complemento al nombre de devolución de llamada. Puede
también poner sus devoluciones de llamada en un módulo y remítase a sus devoluciones de llamada con el nombre
completo del procedimiento. Por ejemplo, si pones tus las devoluciones de llamada en un módulo denominado
"MyAddInXYZ", puede referirse a las devoluciones de llamadas mediante el uso de "MyAddInXYZ.myCallback".

¿Puedo interactuar con los controles de interfaz de usuario Fluent desde VBA?
La clase Application.CommandBars proporciona los siguientes métodos para interactuar con los controles de interfaz de
usuario fluida.

Tabla 2. Métodos de la clase Application.CommandBars

Método Descripción

Sub ExecuteMso (idMso As String) Ejecuta el comando especificado en idMso.

La función GetImageMso(idMso Devuelve la imagen del comando especificado en idMso, cambiado el tamaño a
As String, Width As Long, Height las dimensiones especificadas en anchura y altura. (Esto funciona sólo en
As Long) como IPictureDisp proceso, similar a la imagen y la máscara en Office 2003).

Función GetLabelMso(idMso As Devuelve la propiedad de control solicitada como una cadena.


String) As String

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 7/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Función GetLabelMso(idMso As
String) As String

Función GetLabelMso(idMso As
String) As String

Esta documentación está archivada y no tiene mantenimiento.


Función GetEnabledMso (idMso Devuelve el estado de controles incorporados como un valor booleano.
como cadena) como Boolean

Función GetEnabledMso (idMso


como cadena) como Boolean

Función GetVisibleMso (idMso


como cadena) como Boolean

¿Cómo puedo determinar el identificador de cinta para las cintas en las diferentes aplicaciones?
La tabla siguiente contiene los identificadores de cinta para las diferentes aplicaciones. Cada solicitud pasa este ID para su
solución en el método getCustomUI de la interfaz IRibbonExtensibility . Esto permite su aplicación (o complemento)
determinar qué aplicación ha cargado el código, y puede devolver un conjunto de XML diferentes contenidos
dependiendo de la identidad de la aplicación host.

Tabla 3. IDs de cinta por aplicación

Aplicación Identificador de cinta

Acceso Microsoft.Access.Database

Excel Microsoft.Excel.Workbook

PowerPoint Microsoft.PowerPoint.Presentation

Palabra Microsoft.Word.Document

Outlook Microsoft.Word.Document

Microsoft.Outlook.Mail.Read

Microsoft.Outlook.Mail.Compose

Microsoft.Outlook.MeetingRequest.Read

Microsoft.Outlook.MeetingRequest.Send

Microsoft.Outlook.Appointment

Microsoft.Outlook.Contact

Microsoft.Outlook.Journal

Microsoft.Outlook.Task

Microsoft.Outlook.DistributionList

Microsoft.Outlook.Report
https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 8/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Microsoft.Outlook.Resend

Microsoft.Outlook.Response.Read

Esta documentación está archivada y no tiene mantenimiento.


Microsoft.Outlook.Response.Compose

Microsoft.Outlook.Response.CounterPropose

Microsoft.Outlook.RSS

Microsoft.Outlook.Post.Read

Microsoft.Outlook.Post.Compose

Microsoft.Outlook.DistributionList

Microsoft.Outlook.Report

Microsoft.Outlook.Resend

Microsoft.Outlook.Response.Read

Microsoft.Outlook.Response.Compose

Microsoft.Outlook.Response.CounterPropose

Microsoft.Outlook.Response.CounterPropose

Microsoft.Outlook.RSS

Microsoft.Outlook.Post.Read

Microsoft.Outlook.Post.Compose

Microsoft.Outlook.Sharing.Read

Microsoft.Outlook.Sharing.Compose

¿Puedo añadir imágenes a mis sugerencias de mejora?


No. Puede agregar sólo texto, utilizando la propiedad de la sugerencia .

¿Cómo se empieza una nueva línea en una información en pantalla mejorada?


Escriba el siguiente código de carácter donde desea que la nueva línea para empezar:

& #13;

¿Cómo invalida un control con un identificador calificado (idQ)?


Puede llamar a un procedimiento de devolución de llamada y pasar el ID del control de la siguiente manera.

Asumir que idQ="x: test_idq"

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3Do… 9/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Se invoca la devolución de llamada mediante el método siguiente.

InvalidateControl("test_idq")

Esta
Notadocumentación está archivada y no tiene mantenimiento.

Si personaliza la interfaz de usuario fluido utilizando un COM add-in, el espacio de nombres x en el ejemplo se debe
establecer en el ProgID del complemento que contiene el procedimiento de devolución de llamada. De lo contrario,
las devoluciones de llamada y InvalidateControl no funcionan, porque la devolución de llamada no sabe que añadir-
en llamar.

No puede establecer las devoluciones de llamada o invalidar los controles de un diverso add-in (aunque se especifican
mediante el atributo idQ en XML del actual complemento de). Sólo el add-in que tiene el espacio de nombres del
identificador de programa recibe las devoluciones de llamada y puede invalidar el control.

¿Cómo escribe una cuña para mi añadir en COM?


Ver la información en el artículo de MSDN Aislar extensiones de Office con el Asistente de cuña COM.

¿Cómo mostrar la gran menú?


En la etiqueta < Menú > en el archivo XML de interfaz de usuario Fluent, conjunto itemSize = "large". Para cualquier
elemento que admite el atributo itemSize , establezca el valor en grande para hacer el artículo aparecer grandes
(establece el valor normal para los artículos de tamaño normal).

¿Puedo tener dos devoluciones de llamada con el mismo nombre pero diferentes firmas?
Aunque usted puede hacer esto, recomienda que tenga diferentes devoluciones de llamada para cada control (y no contar
con sobrecarga incorporado para manejar la distinción entre las dos devoluciones de llamada). Por ejemplo, supongamos
que usted escriba un interfaz de usuario Fluent add-in con dos devoluciones de llamada del mismo nombre, como en el
código siguiente.

C#

public void doSomething(IRibbonControl control, bool pressState);


public void doSomething(IRibbonControl control);

También suponen que su marcado XML define un control button y un control toggleButton , y que cada uno de ellos
tiene un onAction = "HacerAlgo" devolución de llamada.

En este caso, sólo el control toggleButton trabajará por el Visual Basic y Visual C# generado automáticamente
implementación de IDispatch . Si escribir un complemento de C++ e implementar IDispatch a sí mismo, este caso va a
funcionar. (En otras palabras, es mejor no hacerlo).

¿Cómo puedo determinar la firma correcta para cada procedimiento de devolución de llamada?
La tabla siguiente enumeran todas las devoluciones de llamadas, junto con sus firmas procedimiento para C++, VBA, C# y
Visual Basic.

Tabla 4. Lista de firmas y las devoluciones de llamada todos C#, VBA, C++ y Visual Basic

Nombre de
Control devolución de Firmas
llamada

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 10/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

(varios getDescription C#: cadena GetDescription(IRibbonControl control)


controles)

VBA: Sub GetDescription (control como IRibbonControl, descripción de ByRef)

Esta documentación está archivadaC++:


y noHRESULT GetDescription ([en] IRibbonControl * pControl, [out, retval]
tiene mantenimiento.
BSTR * pbstr descripción)

Visual Basic: Función GetDescription(control As IRibbonControl) As String

(varios getEnabled C#: bool GetEnabled (control de IRibbonControl)


controles)

VBA: Sub GetEnabled (control como IRibbonControl, ByRef habilitado)

C++: HRESULT GetEnabled ([en] IRibbonControl * pControl, [out, retval]


VARIANT_BOOL * pvarfEnabled)

Visual Basic: Función GetEnabled(control as IRibbonControl) como booleano

(varios Ejemplo C#: IPictureDisp GetImage(IRibbonControl control)


controles)

VBA: Sub ejemplo (control como IRibbonControl, imagen de ByRef)

C++: Ejemplo HRESULT ([en] IRibbonControl * pControl, [out, retval]


IPictureDisp ** ppdispImage)

Visual Basic: Ejemplo de función (control como IRibbonControl) como


IPictureDisp

(varios getImageMso C#: cadena GetImageMso(IRibbonControl control)


controles)

VBA: Sub GetImageMso (control como IRibbonControl, imageMso ByRef)

C++: HRESULT GetImageMso ([en] IRibbonControl * pControl, [out, retval] BSTR


* pbstrImageMso)

Visual Basic: Función GetImageMso (control como IRibbonControl) como


cadena

(varios getLabel C#: cadena GetLabel(IRibbonControl control)


controles)

VBA: Sub GetLabel (control como IRibbonControl, etiqueta de ByRef)

C++: HRESULT GetLabel ([en] IRibbonControl * pControl, [out, retval] BSTR *


pbstrLabel)

Visual Basic: Función GetLabel(control As IRibbonControl) As String

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 11/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

(varios getKeytip C#: cadena GetKeytip(IRibbonControl control)


controles)

VBA: Sub GetKeytip (control como IRibbonControl, etiqueta de ByRef)

Esta documentación está archivadaC++:


y noHRESULT GetKeytip ([en] IRibbonControl * pControl, [out, retval] BSTR *
tiene mantenimiento.
pbstrKeytip)

Visual Basic: Función GetKeytip (control como IRibbonControl) As String

(varios getSize C#: RibbonControlSize GetSize(IRibbonControl control)


controles)

VBA: sub GetSize (control como IRibbonControl, tamaño de ByRef)

C++: HRESULT GetSize ([en] IRibbonControl * pControl, [out, retval]


RibbonControlSize * pequeñas)

Visual Basic: Función GetSize(control As IRibbonControl) como


RibbonControlSize

(varios getScreentip C#: cadena GetScreentip(IRibbonControl control)


controles)

VBA: Sub GetScreentip (control como IRibbonControl, tipo ByRef)

C++: HRESULT GetScreentip ([en] IRibbonControl * pControl, [out, retval] BSTR


* pbstrScreentip)

Visual Basic: Función GetScreentip(control As IRibbonControl) As String

(varios getSupertip C#: cadena GetSupertip(IRibbonControl control)


controles)

VBA: Sub GetSupertip (control como IRibbonControl, tipo ByRef)

C++: HRESULT GetSupertip ([en] IRibbonControl * pControl, [out, retval] BSTR *


pbstrScreentip)

Visual Basic: Función GetSupertip(control As IRibbonControl) As String

(varios getVisible C#: bool GetVisible (control de IRibbonControl)


controles)

VBA: Sub GetVisible (control como IRibbonControl, ByRef visible)

C++: HRESULT GetVisible ([en] IRibbonControl * pControl, [out, retval]


VARIANT_BOOL * pvarfVisible)

Visual Basic: Función GetVisible(control As IRibbonControl) como booleano

botón getShowImage C#: bool GetShowImage (control de IRibbonControl)


https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 12/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

VBA: Sub GetShowImage (control como IRibbonControl, showImage ByRef)

C++: HRESULT GetShowImage ([en] IRibbonControl * pControl, [out, retval]


VARIANT_BOOL * pvarShowImage)
Esta documentación está archivada y no tiene mantenimiento.

Visual Basic: Función GetShowImage (control como IRibbonControl) como


booleano

botón getShowLabel C#: bool GetShowLabel (control de IRibbonControl)

VBA: Sub GetShowLabel (control como IRibbonControl, ByRef showLabel)

C++: HRESULT GetShowLabel ([en] IRibbonControl * pControl, [out, retval]


VARIANT_BOOL * pvarShowLabel)

Visual Basic: Función GetShowLabel (control como IRibbonControl) como


booleano

botón onAction – C#: void OnAction (IRibbonControl control, ref bool CancelDefault)
reutilizar

VBA: Sub OnAction (control como IRibbonControl, byRef CancelDefault)

C++: HRESULT OnAction ([en] IRibbonControl * pControl, [en, hacia fuera]


variante _BOOL * fCancelDefault)

Visual Basic: Sub OnAction (control como IRibbonControl, byRef CancelDefault)

botón onAction C#: void OnAction (control de IRibbonControl)

VBA: Sub OnAction (control como IRibbonControl)

C++: HRESULT OnAction ([en] IRibbonControl * pControl)

Visual Basic: Sub OnAction (control como IRibbonControl)

casilla de getPressed C#: bool GetPressed (control de IRibbonControl)


verificación

VBA: Sub GetPressed (control como IRibbonControl, ByRef returnValue)

C++: HRESULT GetPressed ([en] IRibbonControl * pControl, [out, retval]


VARIANT_BOOL * pvarfPressed)

Visual Basic: Función GetPressed(control As IRibbonControl) como booleano

casilla de onAction C#: anular OnAction (control de IRibbonControl, bool presionado)


verificación

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 13/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

VBA: Sub OnAction (control como IRibbonControl, presionado como Boolean)

C++: HRESULT OnAction ([en] IRibbonControl * pControl [en] VARIANT_BOOL *


pvarfPressed)

Esta documentación está archivada y no tiene mantenimiento.


Visual Basic: Sub OnAction (control como IRibbonControl, presionado como
Boolean)

comboBox getItemCount C#: int GetItemCount (control de IRibbonControl)

VBA: Sub GetItemCount (control como IRibbonControl, Conde de ByRef)

C++: HRESULT GetItemCount ([en] IRibbonControl * pControl, [out, retval] largo


* Conde)

Visual Basic: Función GetItemCount(control As IRibbonControl) As Integer

comboBox getItemID C#: string GetItemID (IRibbonControl control, int index)

VBA: Sub GetItemID (control como IRibbonControl, index As Integer, ByRef id)

C++: HRESULT GetItemID ([en] IRibbonControl * pControl cIndex largo, [out,


retval] [en] BSTR * pbstrID)

Visual Basic: Función GetItemID(control As IRibbonControl, index As Integer) As


String

comboBox getItemImage C#: IPictureDisp GetItemImage(IRibbonControl control, int index)

VBA: Sub GetItemImage (control como IRibbonControl, index As Integer,


imagen de ByRef)

C++: HRESULT GetItemImage ([en] IRibbonControl * pControl cIndex largo,


[out, retval] [en] IPictureDisp ** ppdispImage)

Visual Basic: Función GetItemImage(control As IRibbonControl, index As


Integer) como IPictureDisp

comboBox getItemLabel C#: string GetItemLabel (control de IRibbonControl, int index)

VBA: Sub GetItemLabel (control como IRibbonControl, index As Integer,


etiqueta de ByRef)

C++: HRESULT GetItemLabel ([en] IRibbonControl * pControl cIndex largo, [out,


retval] [en] BSTR * pbstrLabel)

Visual Basic: Función GetItemLabel(control As IRibbonControl, index As Integer)


As String
https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 14/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

comboBox getItemScreenTip C#: string GetItemScreenTip (control de IRibbonControl, int index)

VBA: Sub GetItemScreenTip (control como IRibbonControl, index As Integer,


tipo ByRef)
Esta documentación está archivada y no tiene mantenimiento.

C++: HRESULT GetItemScreentip ([en] IRibbonControl * pControl cIndex largo,


[out, retval] [en] BSTR * pbstrScreentip)

Visual Basic: Función GetItemScreentip(control As IRibbonControl, index As


Integer) As String

comboBox getItemSuperTip C#: string GetItemSuperTip (control de IRibbonControl, int index)

VBA: Sub GetItemSuperTip (control como IRibbonControl, index As Integer,


sugerencia de ByRef)

C++: HRESULT GetItemSuperTip ([en] IRibbonControl * pControl [cIndex largo,


[out, retval] en] BSTR * pbstrScreentip)

Visual Basic: Función GetItemSuperTip (control como IRibbonControl, index As


Integer) As String

comboBox getText C#: cadena GetText(IRibbonControl control)

VBA: Sub GetText (control como IRibbonControl, ByRef texto)

C++: HRESULT GetText ([en] IRibbonControl * pControl, [fuera, reval] BSTR *


pbstrText)

Visual Basic: Función GetText(control As IRibbonControl) As String

comboBox onChange C#: anular OnChange (IRibbonControl control, string texto)

VBA: Sub OnChange (control como IRibbonControl, texto As String)

C++: HRESULT OnChange ([en] IRibbonControl * pControl [en] BSTR *


pbstrText)

Visual Basic: Sub OnChange (control como IRibbonControl, texto As String)

customUI loadImage C#: IPictureDisp LoadImage(string image_id)

VBA: Sub LoadImage (imageId como cadena, imagen de ByRef)

C++: HRESULT LoadImage ([en] BSTR * pbstrImageId, [out, retval] IPictureDisp


** ppdispImage)

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 15/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Visual Basic: Función LoadImage(imageId As String) como IPictureDisp

customUI onLoad C#: vacío OnLoad (IRibbonUI cinta)

Esta documentación está archivadaVBA:


y noSub
tiene mantenimiento.
OnLoad (cinta como IRibbonUI)

C++: HRESULT OnLoad ([en] IRibbonUI * pRibbon)

Visual Basic: Función OnLoad (cinta como IRibbonUI)

menú getItemCount C#: int GetItemCount (control de IRibbonControl)


desplegable

VBA: Sub GetItemCount (control como IRibbonControl, Conde de ByRef)

C++: HRESULT GetItemCount ([en] IRibbonControl * pControl, [out, retval] largo


* Conde)

Visual Basic: Función GetItemCount(control As IRibbonControl) As Integer

menú getItemID C#: string GetItemID (IRibbonControl control, int index)


desplegable

VBA: Sub GetItemID (control como IRibbonControl, index As Integer, ByRef id)

C++: HRESULT GetItemID ([en] IRibbonControl * pControl cIndex largo, [out,


retval] [en] BSTR * pbstrID)

Visual Basic: Función GetItemID(control As IRibbonControl, index As Integer) As


String

menú getItemImage C#: IPictureDisp GetItemImage(IRibbonControl control, int index)


desplegable

VBA: Sub GetItemImage (control como IRibbonControl, index As Integer,


imagen de ByRef)

C++: HRESULT GetItemImage ([en] IRibbonControl * pControl cIndex largo,


[out, retval] [en] IPictureDisp ** ppdispImage)

Visual Basic: Función GetItemImage(control As IRibbonControl, index As


Integer) como IPictureDisp

menú getItemLabel C#: string GetItemLabel (control de IRibbonControl, int index)


desplegable

VBA: Sub GetItemLabel (control como IRibbonControl, index As Integer,


etiqueta de ByRef)

C++: HRESULT GetItemLabel ([en] IRibbonControl * pControl cIndex largo, [out,


retval] [en] BSTR * pbstrLabel)
https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 16/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Visual Basic: Función GetItemLabel(control As IRibbonControl, index As Integer)


As String

menú getItemScreenTip C#: string GetItemScreenTip (control de IRibbonControl, int index)


Esta documentación está archivada y no tiene mantenimiento.
desplegable

VBA: Sub GetItemScreenTip (control como IRibbonControl, index As Integer,


tipo ByRef)

C++: HRESULT GetItemScreentip ([en] IRibbonControl * pControl cIndex largo,


[out, retval] [en] BSTR * pbstrScreentip)

Visual Basic: Función GetItemScreentip(control As IRibbonControl, index As


Integer) As String

menú getItemSuperTip C#: string GetItemSuperTip (control de IRibbonControl, int index)


desplegable

VBA: Sub GetItemSuperTip (control como IRibbonControl, index As Integer,


sugerencia de ByRef)

C++: HRESULT GetItemSuperTip ([en] IRibbonControl * pControl [cIndex largo,


[out, retval] en] BSTR * pbstrSupertip)

Visual Basic: Función GetItemSuperTip (control como IRibbonControl, index As


Integer) As String

menú getSelectedItemI C#: cadena GetSelectedItemID(IRibbonControl control)


desplegable D

VBA: Sub GetSelectedItemID (control como IRibbonControl, índice de ByRef)

C++: HRESULT GetSelectedItemID ([en] IRibbonControl * pControl, [out, retval]


largo * pcItemIndex)

Visual Basic: Función GetSelectedItemID(control As IRibbonControl) As Integer

menú getSelectedItemIn C#: int GetSelectedItemIndex (control de IRibbonControl)


desplegable dex

VBA: Sub GetSelectedItemIndex (control como IRibbonControl, índice de ByRef)

C++: HRESULT GetSelectedItemIndex ([en] IRibbonControl * pControl, [out,


retval] largo * pcItemIndex)

Visual Basic: Función GetSelectedItemIndex(control As IRibbonControl) As


Integer

menú onAction C#: anular OnAction (IRibbonControl control, selectedId cadena, int
desplegable selectedIndex)

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 17/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

VBA: Sub OnAction (control como IRibbonControl, selectedId As String,


selectedIndex As Integer)

C++: HRESULT OnAction ([en] IRibbonControl * pControl [en] BSTR * selectedId


[en] cSelectedIndex largo)
Esta documentación está archivada y no tiene mantenimiento.

Visual Basic: Sub OnAction (control como IRibbonControl, selectedId As String,


selectedIndex As Integer)

dynamicMen getContent C#: cadena GetContent(IRibbonControl control)


u
VBA: Sub GetContent (control como IRibbonControl, contenido de ByRef)

C++: HRESULT GetContent ([en] IRibbonControl * pControl, [out, retval] BSTR *


pbstrContent)

Visual Basic: Función GetContent(control As IRibbonControl) As String

editBox getText C#: cadena GetText(IRibbonControl control)

VBA: Sub GetText (control como IRibbonControl, ByRef texto)

C++: HRESULT GetText ([en] IRibbonControl * pControl, [out, retval] BSTR *


pbstrText)

Visual Basic: Función GetText(control As IRibbonControl) As String

editBox onChange C#: anular OnChange (IRibbonControl control, string texto)

VBA: Sub OnChange (control como IRibbonControl, texto As String)

C++: HRESULT OnChange ([en] IRibbonControl * pControl [en] BSTR *


pbstrText)

Visual Basic: Sub OnChange (control como IRibbonControl, texto As String)

Galería getItemCount C#: int GetItemCount (control de IRibbonControl)

VBA: Sub GetItemCount (control como IRibbonControl, Conde de ByRef)

C++: HRESULT GetItemCount ([en] IRibbonControl * pControl, [out, retval] largo


* Conde)

Visual Basic: Función GetItemCount(control As IRibbonControl) As Integer

Galería getItemHeight C#: int getItemHeight (control de IRibbonControl)

VBA: Sub getItemHeight (control como IRibbonControl, altura de ByRef)

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 18/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

C++: HRESULT getItemHeight ([en] IRibbonControl * pControl, [out, retval]


largo * altura)

Visual Basic: Función getItemHeight (control como IRibbonControl) como


entero
Esta documentación está archivada y no tiene mantenimiento.
Galería getItemID C#: string GetItemID (IRibbonControl control, int index)

VBA: Sub GetItemID (control como IRibbonControl, index As Integer, ByRef id)

C++: HRESULT GetItemID ([en] IRibbonControl * pControl cIndex largo, [out,


retval] [en] BSTR * pbstrID)

Visual Basic: Función GetItemID(control As IRibbonControl, index As Integer) As


String

Galería getItemImage C#: IPictureDisp GetItemImage(IRibbonControl control, int index)

VBA: Sub GetItemImage (control como IRibbonControl, index As Integer,


imagen de ByRef)

C++: HRESULT GetItemImage ([en] IRibbonControl * pControl cIndex largo,


[out, retval] [en] IPictureDisp ** ppdispImage)

Visual Basic: Función GetItemImage(control As IRibbonControl, index As


Integer) como IPictureDisp

Galería getItemLabel C#: string GetItemLabel (control de IRibbonControl, int index)

VBA: Sub GetItemLabel (control como IRibbonControl, index As Integer,


etiqueta de ByRef)

C++: HRESULT GetItemLabel ([en] IRibbonControl * pControl cIndex largo, [out,


retval] [en] BSTR * pbstrLabel)

Visual Basic: Función GetItemLabel(control As IRibbonControl, index As Integer)


As String

Galería getItemScreenTip C#: string GetItemScreenTip (control de IRibbonControl, int index)

VBA: Sub GetItemScreenTip (control como IRibbonControl, índice entero,


pantalla de ByRef)

C++: HRESULT GetItemScreentip ([en] IRibbonControl * pControl cIndex largo,


[out, retval] [en] BSTR * pbstrScreentip)

Visual Basic: Función GetItemScreentip(control As IRibbonControl, index As


Integer) As String

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 19/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Galería getItemSuperTip C#: string GetItemSuperTip (control de IRibbonControl, int index)

VBA: Sub GetItemSuperTip (control como IRibbonControl, índice entero,


pantalla de ByRef)
Esta documentación está archivada y no tiene mantenimiento.
C++: HRESULT GetItemSuperTip ([en] IRibbonControl * pControl [cIndex largo,
[out, retval] en] BSTR * pbstrSupertip)

Visual Basic: Función GetItemSuperTip (control como IRibbonControl, index As


Integer) As String

Galería getItemWidth C#: getItemWidth int (control de IRibbonControl)

VBA: Sub getItemWidth (control como IRibbonControl, anchura de ByRef)

C++: HRESULT getItemWidth ([en] IRibbonControl * pControl, [out, retval] largo


* ancho)

Visual Basic: Función getItemWidth (control como IRibbonControl) como entero

Galería getSelectedItemI C#: int GetSelectedItemID (control de IRibbonControl)


D

VBA: Sub GetSelectedItemID (control como IRibbonControl, índice de ByRef)

C++: HRESULT GetSelectedItemID ([en] IRibbonControl * pControl, [out, retval]


largo * pcItemIndex)

Visual Basic: Función GetSelectedItemID(control As IRibbonControl) As Integer

Galería getSelectedItemIn C#: int GetSelectedItemIndex (control de IRibbonControl)


dex

VBA: Sub GetSelectedItemIndex (control como IRibbonControl, índice de ByRef)

C++: HRESULT GetSelectedItemIndex ([en] IRibbonControl * pControl, [out,


retval] largo * pcItemIndex)

Visual Basic: Función GetSelectedItemIndex(control As IRibbonControl) As


Integer

Galería onAction C#: anular OnAction (IRibbonControl control, selectedId cadena, int
selectedIndex)

VBA: Sub OnAction (control como IRibbonControl, selectedId As String,


selectedIndex As Integer)

C++: HRESULT OnAction ([en] IRibbonControl * pControl [en] BSTR * selectedId


[en] cSelectedIndex largo)

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 20/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Visual Basic: Sub OnAction (control como IRibbonControl, selectedId As String,


selectedIndex As Integer)

menuSeparat getTitle C#: cadena GetTitle(IRibbonControl control)


or Esta documentación está archivada y no tiene mantenimiento.

VBA: Sub GetTitle (control como IRibbonControl, título de ByRef)

C++: HRESULT GetTitle ([en] IRibbonControl * pControl, [out, retval] BSTR *


pbstrTitle)

Visual Basic: Función GetTitle (control como IRibbonControl) As String

toggleButton getPressed C#: bool GetPressed (control de IRibbonControl)

VBA: Sub GetPressed (control como IRibbonControl, ByRef returnValue)

C++: HRESULT GetPressed ([en] IRibbonControl * pControl, [out, retval]


VARIANT_BOOL * pvarfPressed)

Visual Basic: Función GetPressed(control As IRibbonControl) como booleano

toggleButton onAction - C#: void OnAction (IRibbonControl control, bool presionado, ref bool
reutilizar cancelDefault)

VBA: Sub OnAction (control como IRibbonControl, presionado como Boolean,


cancelDefault byRef)

C++: HRESULT OnAction ([en] IRibbonControl * pControl [en] VARIANT_BOOL *


pvarfPressed, [en, hacia fuera] variante _BOOL * fCancelDefault)

Visual Basic: Sub OnAction (control como IRibbonControl, presionado como


Boolean, byRef CancelDefault)

toggleButton onAction C#: anular OnAction (control de IRibbonControl, bool presionado)

VBA: Sub OnAction (control como IRibbonControl, presionado como Boolean)

C++: HRESULT OnAction ([en] IRibbonControl * pControl [en] VARIANT_BOOL *


pvarfPressed)

Visual Basic: Sub OnAction (control como IRibbonControl, presionado como


Boolean)

¿Cómo averiguo lo que indica que cada atributo de cinta?


La tabla siguiente enumera todos los atributos de la cinta e incluye una breve descripción de cada uno.

Tabla 5. Atributos de la cinta


https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 21/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Atributo Tipo o valor Descripción

Descripción Cadena Especifica el texto de la descripción que se muestra en los menús cuando se
establece el atributo itemSize en gran.

Esta documentación está archivada y no tiene mantenimiento.


habilitado true, false, 0, Especifica si el control está habilitado.
1

getContent devolución Para un menú dinámico, recupera el contenido XML que describe el menú.
de llamada

getDescripti devolución Obtiene la descripción de un control.


on de llamada

getEnabled devolución Obtiene el estado habilitado de un control.


de llamada

Ejemplo devolución Obtiene la imagen de este control.


de llamada

getImageMs devolución Obtiene el icono de un control integrado utilizando el identificador de control.


o de llamada

getItemCou devolución Para un combo caja, lista desplegable o galería, obtiene el número de elementos a
nt de llamada mostrar.

getItemID devolución Para un combo caja, lista desplegable o galería, obtiene el identificador de un
de llamada elemento específico.

getItemImag devolución Para un combo caja, lista desplegable o galería, obtiene la imagen de un artículo
e de llamada específico.

getItemLabe devolución Para un combo box, lista desplegable o galería, obtiene la etiqueta para un elemento
l de llamada específico.

getItemScre devolución Para un combo caja, lista desplegable o galería, obtiene la información de pantalla
entip de llamada para un elemento específico.

getItemSupe devolución Para un combo caja, lista desplegable o galería, obtiene la información de pantalla
rtip de llamada mejorado para un elemento específico.

getKeytip devolución Obtiene un control de las teclas.


de llamada

getLabel devolución Obtiene la etiqueta de un control.


de llamada

getPressed devolución Para un botón de alternar, se obtiene un valor que indica si el estado está presionado
de llamada o no presionado.

Para una casilla de verificación, se obtiene un valor que indica si el estado se


selecciona o se borra.

getScreentip devolución Obtiene la información de pantalla para un control.

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 22/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

de llamada

getSelectedI devolución Para una lista desplegable o galería, obtiene el identificador del elemento
temID de llamada seleccionado.

getSelectedI devolución
Esta documentación Para una
está archivada listatiene
y no desplegable o galería, se obtiene el índice del elemento seleccionado.
mantenimiento.
temIndex de llamada

getShowIma devolución Obtiene un valor que especifica si se mostrará la imagen de control.


ge de llamada

getShowLab devolución Obtiene un valor que especifica si se debe mostrar la etiqueta de control.
el de llamada

getSize devolución Obtiene un valor que especifica el tamaño de un control (normal o grande).
de llamada

getSupertip devolución Obtiene un valor que especifica la información de pantalla mejorado para un control.
de llamada

getText devolución Un cuadro de texto o cuadro de edición, obtiene el texto que se mostrará en la parte
de llamada de edición del control.

getTitle devolución Para un separador de menú, obtiene el texto que se mostrará (en lugar de una línea
de llamada horizontal).

getVisible devolución Obtiene un valor que especifica si el control está visible.


de llamada

ID Cadena Un identificador único definido por el usuario para el control (mutuamente


excluyente con idMso y idQ, especificar sólo uno de estos valores).

idMso id control ID de control incorporado (mutuamente excluyente con id y idQ, especificar sólo uno
de estos valores).

idQ id calificado Calificado control de identificación, marcado con un identificador de espacio de


nombres (mutuamente excluyente con id y idMso: especificar sólo uno de estos
valores).

imagen Cadena Especifica una imagen para el control. (En VBA, este valor es un ID de relación)

imageMso id control Especifica un identificador para una imagen incorporada, para que la interfaz de
usuario Fluent copias el icono del control.

insertAfterM id control Especifica el identificador para el control incorporado después a la posición de este
so control.

insertAfterQ id calificado Especifica el identificador de un control especializado (es decir, un control cuya
propiedad idQ se especificó) después de que en la posición de este control.

insertBefore id control Especifica el identificador del control incorporado antes de que el control de este.
Mso

insertBefore id calificado Especifica el identificador de un control especializado (es decir, un control cuya
Q propiedad idQ fue especificado) antes que a la posición de este control.
https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 23/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

itemSize grande, En un menú, especifica el tamaño de los elementos en el menú.


normal

teclas Cadena Especifica las teclas para este control. Las teclas se muestran cuando el usuario
presiona
Esta documentación está archivada y la
notecla
tieneALT más una a tres letras.
mantenimiento.

etiqueta Cadena Especifica la etiqueta para el control.

onAction devolución Se llama cuando el usuario hace clic en este control.


de llamada

onChange devolución Se llama cuando el usuario compromete a texto en un cuadro de edición o un cuadro
de llamada combinado.

información Cadena Especifica el tipo de control.


en pantalla

showImage true, false, 0, Especifica si se va a mostrar la imagen del control.


1

showItemIm true, false, 0, Un combo caja, lista desplegable o galería, especifica si se va a mostrar la imagen de
age 1 cada elemento.

showItemLa true, false, 0, Un combo caja, lista desplegable o galería, especifica si se muestran la etiqueta de
bel 1 cada elemento.

showLabel true, false, 0, Especifica si la etiqueta del control.


1

tamaño grande, Especifica el tamaño para este control.


normal

sizeString Cadena Especifica una cadena, como "MMMMM", que indica el ancho del control.

sugerencia Cadena Especifica la información de pantalla mejorado para el control (generalmente, una
más larga y más completa versión de la información en pantalla).

etiqueta Cadena Especifica el texto definido por el usuario que le permite almacenar información
sobre el control que no es pertinente a ninguna otra propiedad específica.

Título Cadena Para un menú separador, especifica el texto que se mostrará (en lugar de una línea
horizontal).

visible true, false, 0, Especifica si el control está visible.


1

Estoy en busca de orientación sobre cómo crear una experiencia de usuario coherente al
personalizar la interfaz de usuario fluida directamente con archivos XML o a través de
complementos. ¿Puede ayudar?
Usted puede encontrar el documento de la dirección de sistema de Oficina 2007 Guía de estilo de la IU para soluciones y
complementos de Microsoft Download Center.

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 24/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

¿Es posible alinear (justificar derecha o izquierda justificar) cajas de texto en mi interfaz de
usuario Fluent personalizada?
Jajaja Sin embargo, usted podría ser capaz de conseguir un efecto similar mediante el control de caja. El control de cuadro
es un contenedor para otros controles que tiene un atributo boxStyle que puede ser horizontal o vertical.

Esta documentación está archivada y no tiene mantenimiento.


Tengo un documento que creado a partir de una plantilla que contienen varias macros. He
tratado de llamar a las macros de las devoluciones de llamada onAction de cinta sin éxito.
¿Cómo puedo llamar macros existentes de controles de la cinta sin modificar las macros
originales?
No es posible llamar a las macros que se crearon para una versión anterior de Office directamente desde un control de
cinta sin modificar las macros para incluir una referencia al control. Sin embargo, hay una solución. Puede crear un nuevo
módulo que contiene una macro que aloja todos los callbacks de cinta. Cuando se realiza una llamada a la macro nueva
de un control de cinta, se llama la macro más viejo. El siguiente código muestra un ejemplo.

Nuevo módulo de extensibilidad de la cinta


VB

Sub RibbonX_macroname(control as IRibbonControl)


Select Case control
button1
macroname1
button2
macroname2
End Select
End Sub

¿Cómo obtengo el índice seleccionado o ID de punto para un control de cuadro combinado?


La devolución de llamada onChange devuelve la cadena seleccionada. El código siguiente muestra la firma.

VB

Sub OnChange(control as IRibbonControl, text as String)

Cuando se selecciona el valor del cuadro combinado, la devolución de llamada onChange recibe el texto. Sin embargo, no
es posible obtener el índice de la selección.

¿Es posible predecir o controlar el orden en que las devoluciones de llamada se llaman?
Jajaja No debe agregar lógica a sus soluciones de interfaz de usuario fluido que depende de las devoluciones de llamada
se llama en un cierto orden.

En una aplicación que utiliza controles de barra de comandos, la propiedad Tag fue útil para
almacenar cadenas arbitrarias. ¿Cómo puedo usar la propiedad IRibbonControl.Tag en mi
soluciones de interfaz de usuario fluida?
Las aplicaciones de Microsoft Office 2007 no utilizan la propiedad Tag , por lo que se puede utilizar para almacenar
cadenas arbitrarias y luego recuperarlos en tiempo de ejecución. En su XML, puede establecer la etiqueta como en el
código siguiente.

XML

<button id="mybutton" tag="some string" onAction="MyFunction"/>

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 25/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Cuando se llama a MyFunction , puede obtener la propiedad de IRibbonControl.Tag , que "alguna cadena".

Normalmente, se puede distinguir entre los controles mediante la propiedad IRibbonControl.Id , pero hay restricciones
en lo que pueden contener IDs (no caracteres no alfanuméricos y debe todo ser único). La propiedad Tag no tiene esas
restricciones, por lo que puede
Esta documentación está ser utilizadoy en
archivada nolas siguientes
tiene situaciones, donde la propiedad Id no funciona:
mantenimiento.

Si usted necesita almacenar una cadena especial con su control, como un nombre de archivo, como en este
ejemplo: tag="C:\path\to\my\file.xlsm"

Si desea que varios controles ser tratado del mismo modo por sus devoluciones de llamada, pero no quieres tener
una lista de todas sus identificaciones (que deban ser único). Por ejemplo, podría tener botones en diferentes
pestañas con etiqueta = "azul"y luego Compruebe la propiedad etiqueta en lugar de la identificación para la
acción en la devolución de llamada.

¿Es posible mostrar una imagen en una pantalla o mayor información en pantalla similar al
botón de gráfico en el grupo ilustraciones de la ficha Insertar?
Jajaja Esto actualmente no se admite en la extensibilidad de la interfaz de usuario fluida.

Asumir que tengo una cinta personalizada para Outlook 2007 y una cinta diferente definido por
Word 2007. ¿Si utilizo el Word para mi editor de correo electrónico, que la cinta será ver cuando
crear o editar un mensaje de correo electrónico?
Cuando se crea un nuevo tipo de Inspector, Outlook llame al método GetCustomUI y pase el identificador de la cinta
como un argumento. Aunque Outlook utiliza las API de la palabra, sigue siendo un recipiente de Outlook y utiliza la cinta
de opciones de Outlook.

Conclusión
Los artículos que componen este sistema le proporcionan la información que necesita para producir soluciones
profesionales adaptadas a las necesidades de sus clientes. La personalización de las muestras presentadas en la
Personalización de la cinta de 2007 Office Fluent para desarrolladores (parte 1 de 3) pueden ser utilizadas como un punto
de partida para crear una interfaz de usuario que coloca los controles y opciones que son más importantes para sus
clientes a poca distancia. La información de referencia descrita en la Personalización de la cinta de 2007 Office Fluent para
desarrolladores (parte 2 de 3) te da detallado control sobre la apariencia de la interfaz de usuario fluida. Este artículo
responde a muchas de las preguntas que pueden surgir al crear su propia interfaz de usuario fluido modificado para
requisitos particulares. Mediante la aplicación de la información presentada en estos artículos a tus propias aplicaciones,
puede crear más soluciones innovadoras y atractivas que le diferencian de su competencia.

Recursos adicionales
A aprender más sobre los productos y tecnologías mencionados en este artículo, consulte estos recursos:

Desarrollo de Office con Visual Studio Developer Portal

Portal de desarrolladores de interfaz de usuario Fluent de oficina

Documentación: Visual Studio Tools para Office

Foro: Visual Studio Tools para Office

Información sobre el diseño de Office XP Office 2003 Add-ins utilizando el .NET Framework y complementos
https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 26/27
7/2/2018 Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

Cómo construir una oficina COM Add-in mediante Visual Basic .NET

Cómo crear COM complementos de Office mediante VBA y Office Developer

Esta documentación está archivada y no tiene mantenimiento.


© Microsoft 2018

https://www.microsofttranslator.com/bv.aspx?from=&to=es&a=https%3A%2F%2Fmsdn.microsoft.com%2Fes-ar%2Flibrary%2Faa722523(v%3D… 27/27

También podría gustarte