Introducción a la vista Backstage de Office 2010 para programadores
Resumen: Microsoft Office 2010 presenta la vista Backstage de Microsoft Office, la novedad más reciente de la interfaz de usuario de Office Fluent y una característica complementaria de la cinta de opciones. Examine los componentes que conforman la vista Backstage y explore los escenarios que muestran cómo ampliar esta vista en diferentes aplicaciones de Office.
Última modificación: viernes, 24 de abril de 2015
Hace referencia a: Excel 2010 | Office 2007 | Office 2010 | Open XML | PowerPoint 2010 | SharePoint Server 2010 | VBA | Word 2010
Frank Rice, Microsoft Corporation
Abril de 2010
Se aplica a: Microsoft Access 2010, Microsoft Excel 2010, Microsoft InfoPath 2010, Microsoft OneNote 2010, Microsoft PowerPoint 2010, Microsoft Project 2010, Microsoft Publisher 2010, Microsoft SharePoint Designer 2010, Microsoft Visio 2010, Microsoft Word 2010
Contenido
Introducción a la vista Backstage de Microsoft Office 14 Fluent
Glosario de términos de la vista Backstage
Componentes de la vista Backstage
Extensibilidad de la vista Backstage
Personalización de la vista Backstage mediante archivos con formato Open XML
Personalización de la vista Backstage mediante un complemento COM compartido
Preguntas más frecuentes
Descripciones, atributos e información secundaria de los controles de la vista Backstage
Conclusión
Recursos adicionales
Introducción a la vista Backstage de Microsoft Office 14 Fluent
En la versión 2007 de Microsoft Office system, el acceso a la funcionalidad de nivel de archivo se obtenía a través del menú de Office que estaba disponible al hacer clic en el botón de Office.
En Microsoft Office 2010, el botón de Office se sustituyó por una pestaña Archivo. Al hacer clic enella, se llega a la vista Backstage de Microsoft Office. Esta vista le ayuda a descubrir y usar las características que no forman parte de las características de creación de la cinta de opciones. La cinta de opciones, la minibarra de herramientas y las galerías le ayudan a trabajar en los documentos, mientras que la vista Backstage le ayuda a trabajar con los documentos.
La vista Backstage es un elemento totalmente extensible para los programadores, de modo que las organizaciones pueden personalizar la interfaz de usuario para que se ajuste a sus propias necesidades. Lo mejor de todo es que la interfaz de usuario de Backstage se puede personalizar con los mismos archivos, devoluciones de llamadas y muchos de los controles que se usan en la cinta de opciones. Esto significa que los programadores que ya saben cómo personalizar la interfaz de usuario de la cinta de opciones pueden usar estos mismos conocimientos para crear una interfaz de usuario de Backstage acorde con las necesidades de la organización.
La interfaz de usuario de Backstage existe en todas las aplicaciones de Microsoft Office 2010 compatibles con la interfaz de usuario de Office Fluent: Microsoft Access 2010, Microsoft Excel 2010, Microsoft InfoPath 2010, Microsoft OneNote 2010, Microsoft PowerPoint 2010, Microsoft Project 2010, Microsoft Publisher 2010, Microsoft SharePoint Designer 2010, Microsoft Visio 2010 y Microsoft Word 2010. En las siguientes secciones se describe la estructura de la nueva interfaz de usuario y se examinan los detalles necesarios para implementar su propia interfaz de usuario de Backstage personalizada.
Glosario de términos de la vista Backstage
A continuación figuran los términos comunes que se usan en este artículo:
Vista Backstage Modelo de interfaz de usuario de pantalla completa que expone la funcionalidad en el nivel del archivo del documento activo. Forma parte de la interfaz de usuario de Microsoft Office Fluent, que reemplaza al sistema anterior de menús en capas, barras de herramientas y paneles de tareas.
Comando definitivo Comando que le lleva de la vista Backstage al documento. Cuando se invocan, los comandos definitivos cierran la vista Backstage. Algunos ejemplos de estos comandos son Guardar, Guardar como e Imprimir.
Comando rápido Comando que existe en la barra de navegación izquierda y proporciona acceso rápido a las funciones más habituales. Algunos ejemplos de estos comandos son Guardar, Guardar como y Cerrar.
Ficha Página de la vista Backstage dedicada a una tarea en particular. La vista Backstage consta de un conjunto de fichas de nivel superior. La primera ficha (superior) es la predeterminada. Si no se especifica ninguna ubicación, las fichas personalizadas se agregan a la parte inferior de la barra de navegación, debajo de todas las fichas y comandos rápidos existentes. La vista Backstage permite un máximo de 255 fichas.
Grupo Contenedor de la interfaz de usuario que se usa para organizar las funciones relacionadas dentro de las fichas de Backstage por grupos.
Componentes de la vista Backstage
En esta sección, examinará los componentes de la vista Backstage. Si se observa la figura 1, una de las primeras cosas que notará después de iniciar una aplicación de Office 2010 es la nueva pestaña Archivo, que reemplaza al botón de Office. Al hacer clic en la pestaña Archivo se muestra la vista Backstage. También puede abrir esta vista presionando las teclas Alt+A.
Figura 1. La nueva pestaña Archivo
En el lado izquierdo de la vista Backstage se encuentra la barra de navegación, que incluye comandos rápidos (como Guardar y Abrir) y pestañas (como Información y Reciente), tal y como se muestra en la figura 2.
Figura 2. La vista Backstage
Los comandos rápidos proporcionan acceso a tareas de uso frecuente que no están asociadas explícitamente con las pestañas.
Una ficha agrupa las funciones relacionadas con una tarea común y las distribuye en una o dos columnas en un conjunto de grupos (como Modo de compatibilidad y Permisos).
Extensibilidad de la vista Backstage
Además de brindar al usuario una mejor experiencia con las propiedades de documentos, la creación y las funciones de resultados, la vista Backstage es un lugar al que los departamentos de TI y los programadores de terceros pueden conectarse para proporcionar funciones de administración de documentos personalizadas. Existen algunos escenarios típicos de extensibilidad de la vista Backstage:
Un proveedor de soluciones desea agregar datos de línea de negocio a la vista Backstage:
Es posible que el proveedor de soluciones desee crear una ficha completamente nueva para mostrar una gran cantidad de información relacionada con el archivo activo.
Es posible que el proveedor de soluciones desee agregar un grupo a una ficha existente (especialmente la ficha Información) para que la información sea todo lo visible que se pueda.
Es posible que el proveedor de soluciones desee mostrar nuevas funciones en la vista Backstage:
Es posible que el proveedor de soluciones desee crear una nueva ficha centrada en estas funciones personalizadas (por ejemplo, administración de correo electrónico no deseado).
Es posible que el proveedor de soluciones desee agregar funciones personalizadas a una ficha existente porque esa ficha es un lugar lógico para la nueva característica, o puede querer usarla como comando rápido porque la función en cuestión se usará con frecuencia y se puede representar con un solo botón.
Los programadores familiarizados con la extensibilidad de la interfaz de usuario de la cinta de opciones deben sentirse cómodos con la extensibilidad de la vista Backstage, ya que usa básicamente los mismos archivos y estructuras. Los componentes se agregan a la vista Backstage mediante XML y las funciones se asocian a tales componentes mediante procedimientos de devolución de llamada.
Nota
Para obtener más información acerca de la extensibilidad de la cinta de opciones, vea la serie de artículos en tres partes titulada Customizing the 2007 Office Fluent Ribbon for Developers.
Definición del contenido y la estructura de la vista Backstage personalizada mediante XML
Al igual que con la interfaz de usuario de la cinta de opciones, la estructura y los componentes de la vista Backstage se definen usando el formato XML. En el siguiente ejemplo se muestra el formato general de un archivo de formato XML que personaliza la vista en Word 2010. En las siguientes secciones se describe este formato más detalladamente. Este formato da como resultado la vista Backstage personalizada que se muestra en la figura 3.
Figura 3. La ficha de Backstage personalizada creada en este ejemplo
Nota
El XML para modificar la interfaz de usuario de la cinta de opciones también se incluye para mostrar que coexiste en el mismo archivo XML que el formato de la vista Backstage.
<?xml version="1.0" encoding="utf-8" ?>
<customUI xmlns="https://schemas.microsoft.com/office/2009/07/customui" onLoad="OnLoad">
<backstage>
<tab id="testArea" insertAfterMso="TabInfo" label="Sample Scenarios" columnWidthPercent="30" >
<firstColumn>
<group id="grpOne" label="Group One" helperText="This is helper text for Group One">
<primaryItem>
<button id="firstButton" label="Primary Button" onAction="SampleCallback" />
</primaryItem>
<topItems>
<layoutContainer id="layoutOne" layoutChildren="vertical">
<editBox id="firstEBox" label="Sample Edit Box" text="This is sample text" alignLabel="topRight" />
<button id="sampleButton" label="Sample Definitive Button" isDefinitive="true" imageMso="FileDocumentInspect" />
</layoutContainer>
</topItems>
</group>
<group id="grpTwo" label="Group Two" visible="true" >
<primaryItem>
<menu id="menuOne" label="DropDown Menu">
<menuGroup id="menuGrpOne" >
<button id="btnOne" label="Button one" />
<button id="btnTwo" label="Button two" />
<checkBox id="chkBoxOne" label="Sample Check Box" />
</menuGroup>
</menu>
</primaryItem>
<topItems>
<editBox id="secondEBox" text="Disabled Edit Box" enabled="false"/>
<imageControl id="imgControlOne" imageMso="BlogHomePage"/>
<groupBox id="grpBox" label="Group Box with Check Boxes and Radio Group">
<checkBox id="chkBox1" label="A Check Box" />
<checkBox id="chkBox2" label="Disabled Check Box" enabled="false" />
<radioGroup id="rdoGrp" label="Nested Radio Group" >
<radioButton id="firstRadioBtn" label="1st Radio Button"/>
<radioButton id="secondRadioBtn" label="2nd Radio Button"/>
</radioGroup>
</groupBox>
</topItems>
</group>
</firstColumn>
<secondColumn>
<group id="grpThree" label="Group Three" visible="true">
<topItems>
<comboBox id="firstCBox" label="Sample Combo Box" >
<item id="itema" label="Cat"/>
<item id="itemb" label="Dog"/>
<item id="itemc" label="Fish"/>
</comboBox>
<layoutContainer id="layoutTwo" layoutChildren="vertical">
<editBox id="thirdEBox" label="Part of vertical layout" />
<editBox id="fourthEBox" label="Part of vertical layout" />
<editBox id="fifthEBox" label="Part of vertical layout" />
</layoutContainer>
<layoutContainer id="layoutThree" layoutChildren="horizontal">
<button id="anotherButton" label="Horizontal layout" imageMso="NewAppointment" />
<hyperlink id="hyperLink" label="You can place a link here"/>
<button id="lastButton" label="Horizontal layout" />
</layoutContainer>
</topItems>
</group>
</secondColumn>
</tab>
</backstage>
El elemento <backstage> delimita las estructuras personalizadas de la interfaz de usuario de Backstage. Jerárquicamente, el elemento <backstage> es uno de los cuatro elementos de nivel superior permitidos dentro del elemento <customUI>. Los otros elementos permitidos en el mismo nivel son <ribbon>, <contextMenus> y <commands>.
Dentro del elemento <backstage>, se pueden hospedar comandos rápidos (representados con el elemento <button>) y <tabs>; en este ejemplo, Backstage contiene un solo elemento <tab>. El elemento <tab> incluye varios atributos, entre los que se encuentran los siguientes:
id Identificador de la ficha.
insertAfterMso Identificador de la ficha integrada tras la que se debe insertar la ficha personalizada. En este ejemplo, la ficha personalizada se agrega después de la ficha Info.
label Texto que aparece en la ficha; en este ejemplo, la etiqueta de la ficha es Sample Scenarios.
columnWidthPercent Especifica el ancho de la primera columna en el área con fichas como un porcentaje. El ancho de las dos columnas hacen un total de 100%, de modo que si la primera columna se establece en 30%, la secunda columna constituye el 70% del ancho total.
Esta ficha tiene una etiqueta y va después de la ficha Info integrada.
Nota
Todos los atributos en el formato de personalización XML de la interfaz de usuario de Microsoft Office Fluent usan la misma convención Camel, que pone en mayúsculas el carácter inicial de todas las palabras excepto el de la primera; entre los ejemplos se incluyen onAction y insertBeforeMso.
Cada elemento <tab> puede tener una o dos columnas; en este caso, la ficha personalizada Sample Scenarios contiene dos columnas. Además, cada columna puede hospedar varios elementos <group>; en este ejemplo, existen dos grupos en la primera columna (denominados Group One y Group Two) y un solo grupo (Group Three) en la segunda columna. El elemento <group> también permite varios atributos, como id, label, visible, enabled y helperText, entre otros.
Nota
Más adelante en este artículo encontrará una lista de elementos de control y atributos asociados, elementos secundarios y otra información.
Como concepto, los grupos de Backstage personalizados son similares a los grupos de la cinta de opciones, con dos diferencias notorias. Primero, y al contrario que un grupo de la cinta de opciones, no se necesita un grupo de Backstage para colocar el contenido exactamente en (hasta) tres filas; en este ejemplo, existen varios elementos <layoutContainer> que proporcionan la estructura y funciones de diseño enriquecidas, pero sin la restricción de tres filas. Este elemento contiene un atributo layoutChildren que permite especificar si los objetos secundarios se orientan horizontal o verticalmente. En segundo lugar, y al contrario que un grupo de la cinta de opciones de nuevo, un grupo de Backstage puede incluir un elemento <primaryItem> opcional, que puede ser <button> o <menu>. El <primaryItem> constituye el punto central de enfoque de un grupo, que puede ser un botón (como el botón principal dentro de Group One) o un menú (como el menú desplegable dentro de Group Two).
Si se observa el elemento <button> del ejemplo, uno de los atributos que contiene es isDefinitive. Cuando este atributo se establece como verdadero, al hacer clic en el botón se activa la devolución de llamada correspondiente y, a continuación, se cierra la vista Backstage y se vuelve al documento. Viendo el resto del XML, hay varios componentes definidos con diferentes atributos. La ficha personalizada que aparece como resultado es similar a la de la figura 3.
Uso de devoluciones de llamada para agregar funciones
Observando nuevamente el ejemplo, al hacer clic en el botón, se activa la subrutina de devolución de llamada indicada en el atributo onAction. En el siguiente ejemplo se muestra una devolución de llamada simple que se puede activar con el botón.
Sub SampleCallback(ByVal control As IRibbonControl)
MsgBox "You clicked the " & control.Id & " button. "
End Sub
En esta instancia, cuando se llama al procedimiento, Microsoft Office pasa un objeto IRibbonControl que representa el control que llama. Entre las propiedades del objeto IRibbonControl se incluyen Id y Tag. Como se muestra en el código, la propiedad Id permite llamar al mismo procedimiento desde diferentes controles. Todos los procedimientos de devolución de llamada toman el objeto IRibbonControl y también pueden incluir otras propiedades, como el estado presionado de un botón de alternancia.
En las siguientes secciones se enumeran los pasos para personalizar la vista Backstage en el nivel de documento (modificando un archivo con formato Open XML) y en el nivel de aplicación (usando un complemento COM creado en código administrado en Microsoft Visual Studio). Para obtener el procedimiento para personalizar la vista Backstage en el nivel de documento, puede usar el XML descrito en la sección anterior. El complemento COM usa un XML diferente para modificar la vista Backstage.
Personalización de la vista Backstage mediante archivos con formato Open XML
En el nivel de documento, el proceso de personalización de la interfaz de usuario de Microsoft Office Fluent usando el formato XML implica los pasos descritos a continuación. Puede seguir estos pasos usando el formato XML descrito en la sección anterior.
Nota
A pesar de que debe conocer lo que está sucediendo dentro de la estructura de archivos Office Open XML, puede omitir estos pasos. Puede sacar partido de la herramienta Office 2007 Custom UI Editor, con la que puede abrir un documento, insertarle una interfaz de usuario personalizada (con una parte con Office 2007 u Office 2010 como destino) y, a continuación, guardar el documento junto con el formato XML. Esta herramienta realiza los pasos que se muestran en este ejemplo automáticamente y, además, le permite agregar iconos personalizados a la carpeta customUI y hacer referencia a éstos fácilmente.
Para definir el contenido y la estructura de la vista Backstage mediante archivos con formato Open XML
Cree una carpeta en el escritorio denominada customUI.
Cree el archivo de personalización en cualquier editor de texto; para ello, escriba el formato XML con el que se agreguen nuevos componentes a la interfaz de usuario de Microsoft Office Fluent, se modifiquen los componentes existentes o se oculten. Use el formato XML del ejemplo que se mostró anteriormente en este artículo. Guarde el archivo como customUI14.xml en la carpeta que ha creado.
Valide el formato XML usando el esquema de interfaz de usuario de Microsoft Office Fluent personalizado (opcional).
Cree un documento en Microsoft Word 2010 y, a continuación, guárdelo como archivo habilitado para macros de Open XML con la extensión .docm. Si desea agregar código que reaccione cuando el usuario interactúe con la personalización de la interfaz de usuario de Microsoft Office Fluent, deberá guardar el documento en un formato habilitado para macros.
Cierre Word.
En el Explorador de Microsoft Windows, agregue la extensión de nombre de archivo .zip al nombre de archivo del documento y, a continuación, haga doble clic en el archivo para abrirlo como una carpeta comprimida.
Agregue el archivo de personalización al contenedor arrastrando la carpeta customUI del escritorio a la carpeta .zip.
Arrastre la carpeta _rels de la carpeta .zip al escritorio. En el escritorio aparecerá una carpeta denominada _rels, que contiene el archivo .rels.
Abra la carpeta nueva y, a continuación, abra el archivo .rels en un editor de texto.
Entre el elemento <Relationship> final y el elemento <Relationships> de cierre, agregue el código que crea una relación entre el archivo de documento y el archivo de personalización, tal y como se muestra en el siguiente ejemplo. Asegúrese de especificar los nombres de carpeta y de archivo correctamente (el atributo Id proporciona un identificador de relación único para el archivo customUI; su valor es arbitrario, siempre que sea único).
<Relationship Type="https://schemas.microsoft.com/office/2010/relationships/ui/extensibility" Target="/customUI/customUI14.xml" Id="customUIRelID" />
Guarde el archivo .rels y, a continuación, arrástrelo a la carpeta _rels del archivo comprimido para reemplazar el archivo .rels existente.
Quite la extensión .zip y, a continuación, abra el documento.
Para agregar devoluciones de llamada al libro para proporcionar funciones de vista Backstage
Haga clic en la ficha Programador y, a continuación, en Visual Basic.
Nota
Si no puede ver la ficha Programador, debe especificar esta opción. Para hacerlo en la aplicación, haga clic en el botón de Microsoft Office, en Opciones, en Personalizar cinta de opciones y, a continuación, en el cuadro Personalizar la cinta de opciones, seleccione la opción Programador. Éste es un ajuste global que le identifica como programador en todas las aplicaciones de Office que implementan la interfaz de usuario de Microsoft Office Fluent.
En el Editor de Visual Basic, haga doble clic en ThisDocument para abrir la ventana de código.
Escriba la función de VBA como se muestra en el siguiente ejemplo.
Sub SampleCallback(ByVal control As IRibbonControl) MsgBox "You clicked the " & control.Id & " button. " End Sub
Guarde el documento y, a continuación, cierre el Editor de Visual Basic.
Haga clic en el botón de Microsoft Office y, a continuación, en la pestaña Escenarios de ejemplo.
Haga clic en el botón marcado como Primary Button. La figura 4 muestra el cuadro de diálogo.
Figura 4. Este cuadro de diálogo se abre tras hacer clic en el botón Primary
Personalización de la vista Backstage mediante un complemento COM compartido
También puede usar complementos COM para cambiar la interfaz de usuario de Microsoft Office Fluent. Si decide crear un complemento COM que incorpore la personalización de la interfaz de usuario y use código administrado, dispone de dos opciones. Puede crear un complemento COM estándar mediante la plantilla Complemento compartido que se incluye con Microsoft Visual Studio 2008, o bien, si tiene Microsoft Visual Studio 2005 Tools para Office Second Edition instalado, puede crear un complemento COM que presente varias ventajas con respecto al complemento compartido estándar.
Entre otras ventajas, los complementos creados con Microsoft Visual Studio 2005 Tools para Office Second Edition se ejecutan en dominios de aplicación independientes y el modelo de programación de estos complementos es más simple y más fácil de mantener que el que usa la plantilla de complementos compartidos. Para obtener más información, vea el tema sobre cómo migrar un complemento compartido a un complemento de Visual Studio 2005 Tools para Office System SE.
Sin embargo, en los siguientes pasos creará un complemento COM de Microsoft Word administrado usando un complemento compartido estándar. Para obtener más información acerca de cómo crear una interfaz de usuario de Microsoft Office Fluent personalizada mediante un complemento COM compartido y Microsoft Visual Studio 2005 Tools para Office Second Edition, vea el artículo sobre cómo personalizar la cinta de Office Fluent 2007 para programadores (parte 1 de 3).
El complemento COM crea la ficha Backstage personalizada, como se muestra en la figura 5.
Figura 5. La ficha Vista Backstage personalizada muestra varias técnicas con controles
Para cambiar la interfaz de usuario de Microsoft Office Fluent creando un complemento COM compartido
Inicie Microsoft Visual Studio 2008.
En el menú Archivo, seleccione Nuevo y, a continuación, haga clic en Proyecto.
En el cuadro de diálogo Nuevo proyecto, en el panel Tipos de proyecto, expanda Otros tipos de proyecto, haga clic en Extensibilidad y, a continuación, seleccione Complemento compartido.
En el cuadro Nombre, escriba BackStageCOMAddin y, a continuación, haga clic en Aceptar para crear el proyecto.
En la primera página del Asistente para complementos compartidos, haga clic en Siguiente.
En la página Seleccione un lenguaje de programación, seleccione Visual C# o Visual Basic y, a continuación, haga clic en Siguiente.
En la página Seleccione una aplicación host, desactive todas las selecciones excepto Microsoft Word y, a continuación, haga clic en Siguiente.
En la página Especifique un nombre y una descripción, escriba BackStageCOMAddin como nombre y Actualizar la vista Backstage de Word como descripción y, a continuación, haga clic en Siguiente.
En la página Elija las opciones del complemento, seleccione Me gustaría que mi complemento se cargue cuando lo haga la aplicación host, haga clic en Siguiente y, a continuación, en Finalizar.
Visual Studio creará una solución con dos proyectos: el complemento en sí y un proyecto de instalación (el proyecto de instalación le permite instalar el complemento en los equipos de otros usuarios y, además, facilita la instalación y desinstalación del complemento en tiempo de diseño).
Para interactuar con Word 2010 y el modelo de objetos de Microsoft Office Fluent, debe tener referencias a bibliotecas de tipos como se indica a continuación.
Para agregar referencias a bibliotecas de tipos
En el Explorador de soluciones, expanda la carpeta Referencias. Si no puede ver la carpeta Referencias, en el menú Proyecto, haga clic en Mostrar todos los archivos.
Elimine la referencia Microsoft.Office.Core.
Haga clic con el botón secundario en la carpeta Referencias y, a continuación, haga clic en Agregar referencia.
Haga clic en la pestaña COM, seleccione Biblioteca de objetos de Microsoft Office 14.0 y, a continuación, haga clic en Aceptar.
En la parte superior de la pantalla de código, agregue las instrucciones como se muestra en los siguientes ejemplos.
Imports Office = Microsoft.Office.Core Imports Word = Microsoft.Office.Interop.Word
using Office = Microsoft.Office.Core; using Word = Microsoft.Office.Interop.Word;
Para crear el archivo XML de personalización
En el menú Proyecto, haga clic en Agregar nuevo elemento.
En el cuadro de diálogo Agregar nuevo elemento, seleccione Archivo XML. Asigne el nombre customUI14.xml al nuevo archivo y, a continuación, haga clic en Agregar.
En el nuevo archivo XML, agregue formato XML como se muestra en el siguiente ejemplo.
<customUI xmlns="https://schemas.microsoft.com/office/2009/07/customui" onLoad="OnLoad"> <backstage> <tab id="testArea" label="Sample Scenarios" columnWidthPercent="30" insertAfterMso="TabInfo" visible="true" > <firstColumn> <group id="grpOne" label="Group One"> <primaryItem> <button id="btnSimToggleButton" label="Simulate Toggle Button" getImage="toggleImage" onAction="simToggleButton"/> </primaryItem> <topItems> <layoutContainer id="layoutOne" layoutChildren="vertical"> <editBox id="eboxTextTarget" label="Text From Button" getText="getToggledText" alignLabel="topRight" /> <button id="btnInsertText2Doc" label="Insert Text Into Document" isDefinitive="true" onAction="insertText2Doc"/> <editBox id="eboxTextSource" label="Gets Inserted into Document" text="Hello World" onChange="getInsertText"/> </layoutContainer> </topItems> </group> <group id="grpTwo" label="Group Two" getVisible="getInitGroupVisibility" > <primaryItem> <menu id="menuOne" label="Drop Down Menu"> <menuGroup id="menuGrpOne" > <button id="btnShowEditBox" getLabel="getHideShowEBoxLabel" onAction="showHideEditBox"/> <button id="menuButtonTwo" label="Swap Images" onAction="SwapImages"/> <checkBox id="chkEnableDisableEBox" getLabel="switchChkBoxLabel" onAction="chkEnable"/> </menuGroup> </menu> </primaryItem> <topItems> <editBox id="eboxEnabledDisabled" text="Hello World" getEnabled="getEBoxEnabledState"/> <editBox id="eboxShownHidden" text="See me now?" getVisible="getEBoxVisibility"/> <imageControl id="imgControlOne" getImage="getControlImage"/> <groupBox id="grpBox" label="Group Box"> <checkBox id="chkBox1" getLabel="getChkBox1Label" onAction="grpChkBox1Action"/> <checkBox id="chkBox2" getLabel="getChkBox2Label" onAction="grpChkBox2Action"/> <radioGroup id="rdoGrp" label="Nested Radio Group" getEnabled="getrdoEnableByChkBox" onAction="radioGrpAction"> <radioButton id="firstRadioBtn" label="1st Radio Button"/> <radioButton id="secondRadioBtn" label="2nd Radio Button"/> </radioGroup> </groupBox> <editBox id="eboxVisiblebyChkBox" text="See me" getVisible="getEBoxVisibleByChkBox"/> </topItems> </group> </firstColumn> <secondColumn> <group id="grpThree" label="Group Three" visible="true"> <topItems> <layoutContainer id="layoutTwo" layoutChildren="vertical"> <comboBox id="cboPopulateBox" label="Populate Edit Box" onChange="populateEBox"> <item id="item1" label="one"/> <item id="item2" label="two"/> <item id="item3" label="three"/> </comboBox> <editBox id="eboxPopulate" getLabel="getEBoxLabel" getText="getCBOXText"/> </layoutContainer> <layoutContainer id="layoutThree" layoutChildren="vertical"> <button id="btnHideGroup" getLabel="getHideGroupBtnLabel" onAction="hideGroup"/> </layoutContainer> </topItems> </group> </secondColumn> </tab> </backstage> </customUI>
Guarde y cierre el archivo.
La forma más sencilla de usar el archivo XML es considerarlo como un recurso dentro del archivo de recursos del proyecto.
Para agregar el archivo XML como recurso del proyecto
En Explorador de soluciones, seleccione customUI14.xml.
En la ventana Propiedades, seleccione la propiedad Acción de compilación y, a continuación, seleccione Recurso incrustado en la lista de opciones.
En el menú Proyecto, haga clic en Propiedades de BackStageCOMAddin.
Haga clic en la pestaña Recursos.
En el Explorador de soluciones, arrastre customUI14.xml a la superficie de diseño Recursos.
Mediante esta acción se crea un nuevo recurso basado en el archivo con el contenido XML. A partir de ahora, el archivo customUI.xml se almacena automáticamente como un recurso de la aplicación y este contenido se puede recuperar mediante características de lenguaje de Visual Basic o Visual C#.
Cierre la ventana Recursos. Cuando se le solicite, haga clic en Sí para guardar el cuadro diálogo de recursos.
Para obtener acceso al host de aplicación y trabajar con la vista Backstage
En el Explorador de soluciones, haga clic con el botón secundario en Connect.cs o en Connect.vb y, a continuación, haga clic en Ver código.
Busque la declaración existente para la variable applicationObject y cámbiela para que haga referencia a un objeto Word.Application; es decir, cambie la declaración para que tenga el aspecto de los siguientes ejemplos.
Private applicationObject As Word.Application
private Word.Application applicationObject;
Cambie la línea existente en el método OnConnection, que crea una instancia del objeto Word.Application.
applicationObject = DirectCast(application, Word.Application)
applicationObject =(Word.Application)application;
(Sólo en Visual Basic) Cambie la línea de código cercana a la parte superior de la clase que comienza por Implements, para agregar compatibilidad para implementar el nombre de espacios IRibbonExtensibility como se muestra en el siguiente ejemplo y, a continuación, presione Entrar. Visual Basic inserta el procedimiento GetCustomUI automáticamente.
Implements Extensibility.IDTExtensibility2, IRibbonExtensibility
(Sólo C#) Al final de la instrucción public class Connect :, agregue una coma y, a continuación, escriba el nombre de interfaz, como se muestra en el siguiente ejemplo.
IRibbonExtensibility
(Sólo C#) Haga clic con el botón secundario en la interfaz que ha agregado, haga clic en Implementar interfaz y, a continuación, en Implementar interfaz explícitamente. De este modo, se agrega un procedimiento de código auxiliar para el único miembro de la interfaz IRibbonExtensibility: GetCustomUI.
Cambie el método GetCustomUI de modo que tenga el aspecto del siguiente ejemplo.
Public Function GetCustomUI(ByVal RibbonID As String) As String Implements Microsoft.Office.Core.IRibbonExtensibility.GetCustomUI Return OutSpaceCOMAddin.My.Resources.customUI14 End Function
string IRibbonExtensibility.GetCustomUI(string RibbonID) { return SpecStatusResource.customUI14; }
Importante
GetCustomUI se implementa para que devuelva la cadena XML para la personalización de la interfaz de usuario y no debe usarse para la inicialización. En particular, no debe intentar mostrar cuadros de diálogo o ventanas de mensaje en la implementación de GetCustomUI. El lugar más adecuado para realizar la inicialización es en el método OnConnection (para complementos compartidos) o en el método ThisAddIn_Startup (para complementos creados mediante Microsoft Visual Studio 2005 Tools para Office Second Edition).
Agregue el siguiente método a la clase. Se llama a este método cuando se carga la interfaz de usuario de la cinta de opciones y crea una variable que hace referencia a esta interfaz y, a continuación, vuelve a dibujar la cinta de opciones.
Private myRibbon As Office.IRibbonUI Sub OnLoad(ByVal ribbon As Office.IRibbonUI) myRibbon = ribbon myRibbon.Invalidate() End Sub
IRibbonUI myRibbon; public void OnLoad(IRibbonUI ribbon) { myRibbon = ribbon; myRibbon.Invalidate(); }
Preguntas más frecuentes
A continuación se recogen las preguntas más frecuentes relacionadas con la vista Backstage.
¿Cuál es el número máximo de fichas personalizadas que puedo agregar a la vista Backstage?
El límite máximo de número de fichas es de 255.¿Puedo especificar dónde deseo agregar una ficha?
Puede especificar si una ficha personalizada se muestra antes o después de una ficha existente.¿Puedo cambiar el orden de las fichas existentes?
No puede cambiar el orden de las fichas existentes. Sólo puede especificar el orden relativo de las fichas insertando una ficha antes o después de otra.¿Puedo modificar el diseño de columna de las fichas existentes?
No puede cambiar los diseños de columna de ninguna ficha existente que no haya sido creada por usted.¿Dónde puedo agregar grupos?
Puede agregar un nuevo grupo a cualquier columna de una ficha existente. También puede especificar si el grupo nuevo se muestra antes o después de un grupo existente. Una restricción a este respecto es que no puede agregar más grupos a las fichas que contienen un control taskFormGroup, como la ficha Compartir.¿Puedo cambiar el orden de los grupos existentes?
No puede cambiar el orden de los grupos existentes. Únicamente puede especificar órdenes relativos para los grupos nuevos que cree.Cuando agrego varios complementos COM que modifican la vista Backstage de una aplicación de Microsoft Office, ¿cómo sé el orden en el que se implementan?
El orden de prioridad entre las modificaciones en conflicto es que tiene precedencia la última que se cargó.
Descripciones, atributos e información secundaria de los controles de la vista Backstage
La siguiente referencia XML contiene detalles acerca de los controles que se incluyen como parte de la vista Backstage.
Backstage
Representa el elemento <backstage>
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
onShow |
Callback |
VBA: Sub OnShow(contextObject As Object) C#: void OnShow(object contextObject) Visual Basic: Sub OnShow(contextObject As Object) C++: HRESULT OnShow([in] Object *pContextObject) |
onHide |
Callback |
VBA: Sub OnHide(contextObject As Object) C#: void OnHide(object contextObject) Visual Basic: Sub OnHide(contextObject As Object) C++: HRESULT OnHide([in] Object *pContextObject) |
Elementos secundarios: tab, button
Botón
Representa un control button.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
*expand |
String |
No es aplicable |
*layout |
String |
No es aplicable |
tag |
String |
No es aplicable |
*insertAfterMso |
Nombre integrado (String) |
No es aplicable |
*insertBeforeMso |
Nombre integrado (String) |
No es aplicable |
*insertAfterQ |
Nombre completo (String) |
No es aplicable |
*insertBeforeQ |
Nombre completo (String) |
No es aplicable |
*description |
String |
No es aplicable |
*getDescription |
Callback |
VBA: Sub GetDescription(control As IRibbonControl, ByRef returnedVal) C#: string GetDescription(IRibbonControl control) Visual Basic: Function GetDescription(control As IRibbonControl) As String C++: HRESULT GetDescription([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) as Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
*screentip |
String |
No es aplicable |
*getScreentip |
Callback |
VBA: Sub GetScreentip(control As IRibbonControl, ByRef returnedVal) C#: string GetScreentip(IRibbonControl control) Visual Basic: Function GetScreentip(control As IRibbonControl) As String C++: HRESULT GetScreentip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
*supertip |
String |
No es aplicable |
*getSupertip |
Callback |
VBA: Sub GetSupertip(control As IRibbonControl, ByRef returnedVal) C#: string GetSupertip(IRibbonControl control) Visual Basic: Function GetSupertip(control As IRibbonControl) As String C++: HRESULT GetSupertip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
onAction |
Callback |
VBA: Sub OnAction(control As IRibbonControl) C#: void OnAction(IRibbonControl control) Visual Basic: Sub OnAction(control As IRibbonControl) C++: HRESULT OnAction([in] IRibbonControl *pControl) |
isDefinitive |
Boolean |
No es aplicable |
image |
String |
No es aplicable |
imageMso |
Nombre integrado (String) |
No es aplicable |
getImage |
Callback |
VBA: Sub GetImage(control As IRibbonControl, ByRef returnedBitmap) C#: Bitmap GetImage(IRibbonControl control) Visual Basic: Function GetImage(control As IRibbonControl) As Bitmap C++: HRESULT GetImage([in] IRibbonControl *pControl, [out, retval] IPictureDisp ** ppdispImage) |
* No se usa en todas las implementaciones
Elementos secundarios: ninguno
Categoría
Representa un contenedor de categorías.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
Elementos secundarios: task
Casilla de verificación
Representa un control checkBox.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
*expand |
String |
No es aplicable |
*layout |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) as Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
onAction |
Callback |
VBA: Sub OnAction(control As IRibbonControl, isPressed As Boolean) C#: void OnAction(IRibbonControl control, bool isPressed) Visual Basic: Sub OnAction(control As IRibbonControl, isPressed As Boolean) C++: HRESULT OnAction([in] IRibbonControl *pControl, [in] BSTR VARIANT_BOOL *pvarPressed) |
getPressed |
Callback |
VBA: Sub GetPressed(control As IRibbonControl, ByRef returnedVal) C#: bool GetPressed(IRibbonControl control) Visual Basic: Function GetPressed(control As IRibbonControl) As Boolean C++: HRESULT GetPressed([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
description |
String |
No es aplicable |
getDescription |
Callback |
VBA: Sub GetDescription(control As IRibbonControl, ByRef returnedVal) C#: string GetDescription(IRibbonControl control) Visual Basic: Function GetDescription(control As IRibbonControl) As String C++: HRESULT GetDescription([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
*screentip |
String |
No es aplicable |
*getScreentip |
Callback |
VBA: Sub GetScreentip(control As IRibbonControl, ByRef returnedVal) C#: string GetScreentip(IRibbonControl control) Visual Basic: Function GetScreentip(control As IRibbonControl) As String C++: HRESULT GetScreentip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
*supertip |
String |
No es aplicable |
*getSupertip |
Callback |
VBA: Sub GetSupertip(control As IRibbonControl, ByRef returnedVal) C#: string GetSupertip(IRibbonControl control) Visual Basic: Function GetSupertip(control As IRibbonControl) As String C++: HRESULT GetSupertip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
* No se usa en todas las implementaciones
Elementos secundarios: ninguno
Cuadro combinado
Representa un control comboBox.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
alignLabel |
String |
No es aplicable |
expand |
String |
No es aplicable |
layout |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) as Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
getItemCount |
Callback |
VBA: Sub GetItemCount(control As IRibbonControl, ByRef returnedVal) C#: int GetItemCount(IRibbonControl control) Visual Basic: Function GetItemCount(control As IRibbonControl) as Integer C++: HRESULT GetItemCount([in] IRibbonControl *pControl, [out, retval] LONG *returnedVal) |
getItemID |
Callback |
VBA: Sub GetItemID(control As IRibbonControl, itemIndex as Integer, ByRef returnedVal) C#: string GetItemID(IRibbonControl control, int itemIndex) Visual Basic: Function GetItemID(control As IRibbonControl, itemIndex as Integer) as String C++: HRESULT GetItemID([in] IRibbonControl *pControl, [in] LONG cIndex, [out, retval] BSTR *pbstrReturnedVal) |
getItemLabel |
Callback |
VBA: Sub GetItemLabel(control As IRibbonControl, itemIndex as Integer, ByRef returnedVal) C#: string GetItemLabel(IRibbonControl control, int itemIndex) Visual Basic: Function GetItemLabel(control As IRibbonControl, itemIndex as Integer) as String C++: HRESULT GetItemLabel([in] IRibbonControl *pControl, [in] LONG cIndex, [out, retval] BSTR *pbstrReturnedVal) |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
onChange |
Callback |
VBA: Sub OnChange(control As IRibbonControl, text As String) C#: void OnChange(IRibbonControl control, string text) Visual Basic: Sub OnChange(control As IRibbonControl, text As String) C++: HRESULT OnChange([in] IRibbonControl *pControl, [in] BSTR *pbstrText) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
sizeString |
String |
No es aplicable |
getText |
Callback |
VBA: Sub GetText(control As IRibbonControl, ByRef returnedVal) C#: string GetText(IRibbonControl control) Visual Basic: Function GetText(control As IRibbonControl) As String C++: HRESULT GetText([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
Elementos secundarios: item
customUI
La etiqueta raíz de todas las personalizaciones de la interfaz de usuario de Fluent.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
onLoad |
Callback |
VBA: Sub OnLoad(ribbon As IRibbonUI) C#: void OnLoad(IRibbonUI ribbon) Visual Basic: Sub OnLoad(ribbon As IRibbonUI) C++: HRESULT OnLoad([in] IRibbonUI *pRibbon) |
loadImage |
Callback |
VBA: Sub LoadImage(imageId As String, ByRef image) C#: IPictureDisp LoadImage(string image_id) Visual Basic: Function LoadImage(imageId As String) As IPictureDisp C++: HRESULT LoadImage([in] BSTR *pbstrImageId, [out, retval] IPictureDisp ** ppdispImage) *pRibbon) |
Elementos secundarios: commands, ribbon, backstage
Desplegable
Representa un control dropDown.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
expand |
String |
No es aplicable |
layout |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) as Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
getItemCount |
Callback |
VBA: Sub GetItemCount(control As IRibbonControl, ByRef returnedVal) C#: int GetItemCount(IRibbonControl control) Visual Basic: Function GetItemCount(control As IRibbonControl) as Integer C++: HRESULT GetItemCount([in] IRibbonControl *pControl, [out, retval] LONG *returnedVal) |
getItemID |
Callback |
VBA: Sub GetItemID(control As IRibbonControl, itemIndex as Integer, ByRef returnedVal) C#: string GetItemID(IRibbonControl control, int itemIndex) Visual Basic: Function GetItemID(control As IRibbonControl, itemIndex as Integer) as String C++: HRESULT GetItemID([in] IRibbonControl *pControl, [in] LONG cIndex, [out, retval] BSTR *pbstrReturnedVal) |
getItemLabel |
Callback |
VBA: Sub GetItemLabel(control As IRibbonControl, itemIndex as Integer, ByRef returnedVal) C#: string GetItemLabel(IRibbonControl control, int itemIndex) Visual Basic: Function GetItemLabel(control As IRibbonControl, itemIndex as Integer) as String C++: HRESULT GetItemLabel([in] IRibbonControl *pControl, [in] LONG cIndex, [out, retval] BSTR *pbstrReturnedVal) |
getSelectedItemIndex |
Callback |
VBA: Sub GetSelectedItemIndex(control As IRibbonControl, ByRef returnedVal) C#: int GetSelectedItemIndex(IRibbonControl control) Visual Basic: Function GetSelectedItemIndex(control As IRibbonControl) as Integer C++: HRESULT GetSelectedItemIndex([in] IRibbonControl *pControl, [out, retval] LONG *returnedVal) |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
onAction |
Callback |
VBA: Sub OnAction(control As IRibbonControl, itemID As String, itemIndex As Integer) C#: void OnAction(IRibbonControl control, string itemID, int itemIndex) Visual Basic: Sub OnAction(control As IRibbonControl, itemID As String, itemIndex As Integer) C++: HRESULT OnAction([in] IRibbonControl *pControl, [in] BSTR *selectedID, [in] LONG cSelectedIndex) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
sizeString |
String |
No es aplicable |
screentip |
String |
No es aplicable |
getScreentip |
Callback |
VBA: Sub GetScreentip(control As IRibbonControl, ByRef returnedVal) C#: string GetScreentip(IRibbonControl control) Visual Basic: Function GetScreentip(control As IRibbonControl) As String C++: HRESULT GetScreentip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
supertip |
String |
No es aplicable |
getSupertip |
Callback |
VBA: Sub GetSupertip(control As IRibbonControl, ByRef returnedVal) C#: string GetSupertip(IRibbonControl control) Visual Basic: Function GetSupertip(control As IRibbonControl) As String C++: HRESULT GetSupertip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
Elementos secundarios: item
Cuadro de edición
Representa el control editBox.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
alignLabel |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) As Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
expand |
String |
No es aplicable |
layout |
String |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
maxLength |
Entero positivo |
No es aplicable |
onChange |
Callback |
VBA: Sub OnChange(control As IRibbonControl, text As String) C#: void OnChange(IRibbonControl control, string text) Visual Basic: Sub OnChange(control As IRibbonControl, text As String) C++: HRESULT OnChange([in] IRibbonControl *pControl, [in] BSTR *pbstrText) |
sizeString |
String |
No es aplicable |
getText |
Callback |
VBA: Sub GetText(control As IRibbonControl, ByRef returnedVal) C#: string GetText(IRibbonControl control) Visual Basic: Function GetText(control As IRibbonControl) As String C++: HRESULT GetText([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
Elementos secundarios: ninguno
Grupo
Representa el contenedor de grupos.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
insertAfterMso |
Nombre integrado (String) |
No es aplicable |
insertBeforeMso |
Nombre integrado (String) |
No es aplicable |
insertAfterQ |
Nombre completo (String) |
No es aplicable |
insertBeforeQ |
Nombre completo (String) |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
getStyle |
Callback |
VBA: Sub GetStyle(control As IRibbonControl, ByRef returnedVal) C#: BackstageGroupStyle GetStyle(IRibbonControl control) Visual Basic: Function GetStyle(control As IRibbonControl) As BackstageGroupStyle C++: HRESULT GetStyle([in] IRibbonControl *pControl, [out, retval] BackstageGroupStyle *pbstrReturnedVal) |
helperText |
String |
No es aplicable |
getHelperText |
VBA: Sub GetHelperText(control As IRibbonControl, ByRef returnedVal) C#: string GetHelperText(IRibbonControl control) Visual Basic: Function GetHelperText(control As IRibbonControl) As String C++: HRESULT GetHelperText([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
|
showLabel |
Boolean |
No es aplicable |
getShowLabel |
Callback |
VBA: Sub GetShowLabel(control As IRibbonControl, ByRef returnedVal) C#: bool GetShowLabel(IRibbonControl control) Visual Basic: Function GetShowLabel(control As IRibbonControl) As Boolean C++: HRESULT GetShowLabel([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
Elementos secundarios: primaryItem, topItems, bottomItems
Cuadro de grupo
Representa el contenedor groupBox.
Atributos:
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
expand |
String |
No es aplicable |
layout |
String |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
Elementos secundarios: button, checkbox, editBox, dropdown, radioGroup, comboBox, hyperlink, labelControl, groupBox, layoutContainer, imageControl
Hipervínculo
Representa un control hyperlink.
Atributos:
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
alignLabel |
String |
No es aplicable |
expand |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) As Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
layout |
String |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
target |
String |
No es aplicable |
getTarget |
Callback |
VBA: Sub GetTarget(control As IRibbonControl, ByRef returnedVal) C#: string GetTarget(IRibbonControl control) Visual Basic: Function GetTarget(control As IRibbonControl) As String C++: HRESULT GetTarget([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
Elementos secundarios: ninguno
Control de imagen
Representa un control imageControl.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) As Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
image |
String |
No es aplicable |
imageMso |
Nombre integrado (String) |
No es aplicable |
getImage |
Callback |
VBA: Sub GetImage(control As IRibbonControl, ByRef returnedBitmap) C#: Bitmap GetImage(IRibbonControl control) Visual Basic: Function GetImage(control As IRibbonControl) As Bitmap C++: HRESULT GetImage([in] IRibbonControl *pControl, [out, retval] IPictureDisp ** ppdispImage) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
Elementos secundarios: ninguno
Elemento
Representa el elemento en un control dropDown o comboBox.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
Elementos secundarios: ninguno
Control de etiqueta
Representa el control labelControl.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
alignLabel |
String |
No es aplicable |
expand |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) As Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
layout |
String |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
Elementos secundarios: ninguno
Contenedor de diseño
Representa el contenedor layoutContainer.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
align |
String |
No es aplicable |
expand |
String |
No es aplicable |
layoutChildren |
String |
No es aplicable |
Elementos secundarios: button, checkbox, editBox, dropdown, radioGroup, comboBox, hyperlink, labelControl, groupBox, layoutContainer, imageControl
Menú
Representa el control menu.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
*description |
String |
No es aplicable |
*getDescription |
Callback |
VBA: Sub GetDescription(control As IRibbonControl, ByRef returnedVal) C#: string GetDescription(IRibbonControl control) Visual Basic: Function GetDescription(control As IRibbonControl) As String C++: HRESULT GetDescription([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
tag |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) As Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
image |
String |
No es aplicable |
imageMso |
Nombre integrado (String) |
No es aplicable |
getImage |
Callback |
VBA: Sub GetImage(control As IRibbonControl, ByRef returnedBitmap) C#: Bitmap GetImage(IRibbonControl control) Visual Basic: Function GetImage(control As IRibbonControl) As Bitmap C++: HRESULT GetImage([in] IRibbonControl *pControl, [out, retval] IPictureDisp ** ppdispImage) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
*screentip |
String |
No es aplicable |
*getScreentip |
Callback |
VBA: Sub GetScreentip(control As IRibbonControl, ByRef returnedVal) C#: string GetScreentip(IRibbonControl control) Visual Basic: Function GetScreentip(control As IRibbonControl) As String C++: HRESULT GetScreentip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
*supertip |
String |
No es aplicable |
*getSupertip |
Callback |
VBA: Sub GetSupertip(control As IRibbonControl, ByRef returnedVal) C#: string GetSupertip(IRibbonControl control) Visual Basic: Function GetSupertip(control As IRibbonControl) As String C++: HRESULT GetSupertip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
* No se usa en todas las implementaciones
Elementos secundarios: menuGroup
Grupo de menús
Representa el contenedor menuGroup.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
itemSize |
String |
No es aplicable |
Elementos secundarios: button, checkbox, menu
Elemento principal
Representa un contenedor primaryItem.
Atributos: ninguno
Elementos secundarios: button, menu
Botón de opciones
Representa el botón en un control radioGroup.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
Elementos secundarios: ninguno
Grupo de opciones
Representa el contenedor del control radioButton.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
alignLabel |
String |
No es aplicable |
expand |
String |
No es aplicable |
layout |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) as Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
getItemCount |
Callback |
VBA: Sub GetItemCount(control As IRibbonControl, ByRef returnedVal) C#: int GetItemCount(IRibbonControl control) Visual Basic: Function GetItemCount(control As IRibbonControl) as Integer C++: HRESULT GetItemCount([in] IRibbonControl *pControl, [out, retval] LONG *returnedVal) |
getItemID |
Callback |
VBA: Sub GetItemID(control As IRibbonControl, itemIndex As Integer, ByRef returnedVal) C#: string GetItemID(IRibbonControl control, int itemIndex) Visual Basic: Function GetItemID(control As IRibbonControl, itemIndex as Integer) as String C++: HRESULT GetItemID([in] IRibbonControl *pControl, [in] LONG cIndex, [out, retval] BSTR *pbstrReturnedVal) |
getItemLabel |
Callback |
VBA: Sub GetItemLabel(control As IRibbonControl, itemIndex As Integer, ByRef returnedVal) C#: string GetItemLabel(IRibbonControl control, int itemIndex) Visual Basic: Function GetSelectedItemIndex(control As IRibbonControl, itemIndex as Integer) as String C++: HRESULT GetSelectedItemIndex([in] IRibbonControl *pControl, [in] LONG cIndex, [out, retval] BSTR *pbstrReturnedVal) |
getSelectedItemIndex |
Callback |
VBA: Sub GetSelectedItemIndex(control As IRibbonControl, ByRef returnedVal) C#: int GetSelectedItemIndex(IRibbonControl control) Visual Basic: Function GetSelectedItemIndex(control As IRibbonControl) as Integer C++: HRESULT GetSelectedItemIndex([in] IRibbonControl *pControl, [out, retval] LONG *returnedVal) |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
onAction |
Callback |
VBA: Sub OnAction(control As IRibbonControl) C#: void OnAction(IRibbonControl control) Visual Basic: Sub OnAction(control As IRibbonControl) C++: HRESULT OnAction([in] IRibbonControl *pControl) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
Elementos secundarios: radioButton
Ficha
Representa el contenedor principal de los controles de la vista Backstage relacionados.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
insertAfterMso |
Nombre integrado (String) |
No es aplicable |
insertBeforeMso |
Nombre integrado (String) |
No es aplicable |
insertAfterQ |
Nombre completo (String) |
No es aplicable |
insertBeforeQ |
Nombre completo (String) |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) as Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
title |
String |
No es aplicable |
getTitle |
Callback |
VBA: Sub GetTitle(control As IRibbonControl, ByRef returnedVal) C#: string GetTitle(IRibbonControl control) Visual Basic: Function GetTitle(control As IRibbonControl) As String C++: HRESULT GetTitle([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
columnWidthPercent |
Positive Integer |
No es aplicable |
firstColumnMinWidth |
Positive Integer |
No es aplicable |
firstColumnMaxWidth |
Positive Integer |
No es aplicable |
secondColumnMinWidth |
Positive Integer |
No es aplicable |
secondColumnMaxWidth |
Positive Integer |
No es aplicable |
Elementos secundarios: firstColumn, secondColumn
Tarea
Representa el contenedor de tareas.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
enabled |
Boolean |
No es aplicable |
getEnabled |
Callback |
VBA: Sub GetEnabled(control As IRibbonControl, ByRef returnedVal) C#: bool GetEnabled(IRibbonControl control) Visual Basic: Function GetEnabled(control As IRibbonControl) as Boolean C++: HRESULT GetEnabled([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
keytip |
Token |
No es aplicable |
getKeytip |
Callback |
VBA: Sub GetKeytip(control As IRibbonControl, ByRef returnedVal) C#: string GetKeytip(IRibbonControl control) Visual Basic: Function GetKeytip(control As IRibbonControl) As String C++: HRESULT GetKeytip([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
description |
String |
No es aplicable |
getDescription |
Callback |
VBA: Sub GetDescription(control As IRibbonControl, ByRef returnedVal) C#: string GetDescription(IRibbonControl control) Visual Basic: Function GetDescription(control As IRibbonControl) As String C++: HRESULT GetDescription([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
image |
String |
No es aplicable |
imageMso |
Nombre integrado (String) |
No es aplicable |
getImage |
Callback |
VBA: Sub GetImage(control As IRibbonControl, ByRef returnedBitmap) C#: Bitmap GetImage(IRibbonControl control) Visual Basic: Function GetImage(IRibbonControl control) As Bitmap C++: HRESULT GetImage([in] IRibbonControl *pControl, [out, retval] IPictureDisp ** ppdispImage) |
Elementos secundarios: group
Grupo de formularios de tareas
Representa un contenedor taskFormGroup.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
insertAfterMso |
Nombre integrado (String) |
No es aplicable |
insertBeforeMso |
Nombre integrado (String) |
No es aplicable |
insertAfterQ |
Nombre completo (String) |
No es aplicable |
insertBeforeQ |
Nombre completo (String) |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
helperText |
String |
No es aplicable |
getHelperText |
Callback |
VBA: Sub GetHelperText(control As IRibbonControl, ByRef returnedVal) C#: string GetHelperText(IRibbonControl control) Visual Basic: Function GetHelperText(control As IRibbonControl) As String C++: HRESULT GetHelperText([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
showLabel |
Boolean |
No es aplicable |
getShowLabel |
Callback |
VBA: Sub GetShowLabel(control As IRibbonControl, ByRef returnedVal) C#: bool GetShowLabel(IRibbonControl control) Visual Basic: Function GetShowLabel(control As IRibbonControl) As Boolean C++: HRESULT GetShowLabel([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
Elementos secundarios: category
Grupo de tareas
Representa un contenedor taskGroup.
Atributo |
Tipo |
Firma de devolución de llamada |
---|---|---|
id |
Id |
No es aplicable |
idQ |
Nombre completo (String) |
No es aplicable |
idMso |
Nombre integrado (String) |
No es aplicable |
tag |
String |
No es aplicable |
insertAfterMso |
Nombre integrado (String) |
No es aplicable |
insertBeforeMso |
Nombre integrado (String) |
No es aplicable |
insertAfterQ |
Nombre completo (String) |
No es aplicable |
insertBeforeQ |
Nombre completo (String) |
No es aplicable |
label |
String |
No es aplicable |
getLabel |
Callback |
VBA: Sub GetLabel(control As IRibbonControl, ByRef returnedVal) C#: string GetLabel(IRibbonControl control) Visual Basic: Function GetLabel(control As IRibbonControl) As String C++: HRESULT GetLabel([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
visible |
Boolean |
No es aplicable |
getVisible |
Callback |
VBA: Sub GetVisible(control As IRibbonControl, ByRef returnedVal) C#: bool GetVisible(IRibbonControl control) Visual Basic: Function GetVisible(control As IRibbonControl) As Boolean C++: HRESULT GetVisible([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
helperText |
String |
No es aplicable |
getHelperText |
Callback |
VBA: Sub GetHelperText(control As IRibbonControl, ByRef returnedVal) C#: string GetHelperText(IRibbonControl control) Visual Basic: Function GetHelperText(control As IRibbonControl) As String C++: HRESULT GetHelperText([in] IRibbonControl *pControl, [out, retval] BSTR *pbstrReturnedVal) |
showLabel |
Boolean |
No es aplicable |
getShowLabel |
Callback |
VBA: Sub GetShowLabel(control As IRibbonControl, ByRef returnedVal) C#: bool GetShowLabel(IRibbonControl control) Visual Basic: Function GetShowLabel(control As IRibbonControl) As Boolean C++: HRESULT GetShowLabel([in] IRibbonControl *pControl, [out, retval] BSTR VARIANT_BOOL *pvarReturnedVal) |
Elementos secundarios: category
Conclusión
La extensibilidad de la vista Backstage brinda una oportunidad inigualable para proporcionar a los usuarios un conjunto de menús y opciones personalizados y dedicados. Y lo mejor de todo es que puede usar la experiencia y las estructuras que usó al personalizar la interfaz de usuario de la cinta de opciones. Desde aquí les animo a que exploren los diferentes componentes que conforman la interfaz de usuario de Microsoft Office Fluent para crear aplicaciones personalizadas para su organización.
Recursos adicionales
En las siguientes ubicaciones podrá encontrar más información acerca de los temas tratados en este artículo.
Personalización de la cinta de Office Fluent 2007 para programadores (parte 1 de 3)
Portal de programadores de interfaz de usuario de Office Fluent
Agradecimientos: Gracias a mi editora, Linda Cannon, por su ayuda en la preparación de este artículo para su publicación.