Condividi tramite


Cenni preliminari sulla barra multifunzione

In Microsoft Office System 2007 è stato introdotto un elemento di interfaccia utente denominato barra multifunzione. La barra multifunzione rappresenta uno strumento per organizzare i comandi correlati in modo da facilitarne l'individuazione. Su tale barra i comandi vengono visualizzati come controlli. I controlli sono organizzati in gruppi disposti lungo una striscia orizzontale all'estremità superiore della finestra di un'applicazione. I gruppi correlati sono organizzati in schede.

La maggior parte delle funzionalità, a cui si accedeva mediante i menu e le barre degli strumenti nelle versioni precedenti di Microsoft Office System, è ora accessibile mediante la barra multifunzione. Per ulteriori informazioni, vedere l'articolo tecnico Developer Overview of the User Interface for the 2007 Microsoft Office System (la pagina potrebbe essere in inglese).

Si applica a: le informazioni fornite in questo argomento sono valide per i progetti a livello di documento e di applicazione per Excel 2007, Excel 2010, InfoPath 2010, Outlook 2007, Outlook 2010, PowerPoint 2007, PowerPoint 2010, Project 2010, Visio 2010, Word 2007 e Word 2010. Per ulteriori informazioni, vedere Funzionalità disponibili in base ai tipi di progetto e applicazioni di Office.

Personalizzazione della barra multifunzione di Microsoft Office

Per personalizzare la barra multifunzione, aggiungere uno dei seguenti elementi della barra al progetto di Office:

  • Barra multifunzione (finestra di progettazione visiva)

  • Barra multifunzione (XML)

Ad esempio, per personalizzare la barra multifunzione di Excel, aggiungere un elemento di tale barra a un progetto di componente aggiuntivo per Excel.

Elemento Barra multifunzione (finestra di progettazione visiva)

L'elemento Barra multifunzione (finestra di progettazione visiva) fornisce strumenti avanzati che semplificano la progettazione e lo sviluppo di una barra multifunzione personalizzata. Utilizzare l'elemento Barra multifunzione (finestra di progettazione visiva) per personalizzare la barra multifunzione nei modi seguenti:

  • Aggiunta di schede personalizzate o incorporate a una barra multifunzione.

  • Aggiunta di gruppi personalizzati a una scheda personalizzata o incorporata.

    Nota

    Una scheda o un gruppo incorporato rappresentano una scheda o un gruppo già presenti sulla barra multifunzione di un'applicazione Microsoft Office. Ad esempio, la scheda Dati è una scheda incorporata in Excel. Il gruppo Connessioni è un gruppo incorporato nella scheda Dati.

  • Aggiunta di controlli personalizzati a un gruppo personalizzato.

  • Aggiunta di controlli personalizzati al menu Microsoft Office.

Per ulteriori informazioni su come personalizzare una barra multifunzione utilizzando l'elemento Barra multifunzione (finestra di progettazione visiva), vedere Finestra di progettazione della barra multifunzione.

Elemento Barra multifunzione (XML)

Utilizzare l'elemento Barra multifunzione (XML) se si desidera personalizzare la barra multifunzione in un modo non supportato dall'elemento Barra multifunzione (finestra di progettazione visiva). Utilizzare l'elemento Barra multifunzione (XML) per personalizzare la barra multifunzione nei modi seguenti:

  • Aggiunta di gruppi incorporati a una scheda personalizzata o incorporata.

  • Aggiunta di controlli incorporati a un gruppo personalizzato.

  • Aggiunta di codice personalizzato per eseguire l'override dei gestori eventi dei controlli incorporati.

  • Personalizzazione della barra di accesso rapido.

  • Condivisione di una personalizzazione della barra multifunzione tra diversi componenti aggiuntivi utilizzando un ID completo.

Per ulteriori informazioni su come personalizzare la barra multifunzione utilizzando l'elemento Barra multifunzione (XML), vedere Elemento XML della barra multifunzione.

Esportazione di una barra multifunzione dalla finestra di progettazione nel file XML della barra

Se si crea una barra multifunzione utilizzando la relativa finestra di progettazione e si decide quindi di personalizzare la barra in modi non supportati dall'elemento Barra multifunzione (finestra di progettazione visiva), è possibile esportare la barra multifunzione in XML.

In Visual Studio viene automaticamente creato un elemento Barra multifunzione (XML) e il file XML della barra multifunzione viene popolato con elementi e attributi per ogni controllo della barra.

Non tutte le proprietà contenute nella finestra Proprietà della finestra di progettazione della barra multifunzione vengono trasferite nel file XML della barra. Ad esempio, in Visual Studio non viene esportato il valore della proprietà Image o Text. Questa situazione si verifica perché è necessario creare un metodo di callback nel file di codice della barra multifunzione del progetto esportato per assegnare un'immagine o impostare il testo di un controllo. In Visual Studio non vengono generati automaticamente metodi di callback come parte del processo di esportazione.

Inoltre, i valori di proprietà predefiniti rimasti invariati non vengono visualizzati nel file XML risultante della barra multifunzione.

Per ulteriori informazioni su come esportare la barra multifunzione in XML, vedere Procedura: esportare una barra multifunzione dalla finestra di progettazione in un elemento XML della barra.

Aggiornamento del codice

Viene aggiunto un nuovo file di codice della barra multifunzione a Esplora soluzioni. Questo file contiene la classe XML della barra multifunzione. È necessario creare metodi di callback nell'area Ribbon Callbacks di questa classe per gestire le azioni dell'utente, ad esempio la selezione di un pulsante. Spostare il codice dai gestori eventi in questi metodi di callback e modificarlo in modo che utilizzi il modello di programmazione di estensibilità della barra multifunzione (RibbonX). Per ulteriori informazioni, vedere Elemento XML della barra multifunzione.

È inoltre necessario aggiungere codice alla classe ThisAddIn, ThisWorkbook o ThisDocument che esegue l'override del metodo CreateRibbonExtensibilityObject e restituisce la classe XML della barra multifunzione all'applicazione Office.

Per ulteriori informazioni, vedere Elemento XML della barra multifunzione.

Aggiunta di più elementi della barra multifunzione a un progetto

È possibile aggiungere più elementi della barra multifunzione a un singolo progetto. Questa operazione è utile se si desidera eseguire una delle due attività seguenti:

  • Creazione di barre multifunzione per i controlli Outlook. Per ulteriori informazioni, vedere Personalizzazione di una barra multifunzione per Outlook.

    Nota

    Un controllo rappresenta una finestra che viene aperta quando gli utenti eseguono determinate attività, ad esempio la creazione di un messaggio di posta elettronica.

  • Selezione della barra multifunzione da visualizzare in fase di esecuzione.

Selezione delle barre multifunzione da visualizzare in fase di esecuzione

Poiché un progetto può contenere più barre multifunzione, è possibile selezionare quella da visualizzare in fase di esecuzione.

Per selezionare una barra multifunzione da visualizzare in fase di esecuzione, eseguire l'override del metodo CreateRibbonExtensibilityObject nella classe ThisAddin, ThisWorkbook o ThisDocument del progetto e restituire la barra multifunzione che si desidera visualizzare. Nell'esempio riportato di seguito viene controllato il valore di un campo denominato myCondition e viene restituita la barra multifunzione appropriata.

Nota

La sintassi utilizzata in questo esempio restituisce una barra multifunzione creata mediante l'elemento Barra multifunzione (finestra di progettazione visiva). La sintassi per la restituzione di una barra multifunzione creata mediante un elemento Barra multifunzione (XML) è leggermente diversa. Per ulteriori informazioni sulla restituzione di un elemento Barra multifunzione (XML), vedere Elemento XML della barra multifunzione.

Per i progetti destinati a .NET Framework 4, aggiungere il codice seguente:

Protected Overrides Function CreateRibbonExtensibilityObject() As  _
    Microsoft.Office.Core.IRibbonExtensibility
    If myCondition = True Then
        Return Globals.Factory.GetRibbonFactory().CreateRibbonManager _
            (New Microsoft.Office.Tools.Ribbon.IRibbonExtension() _
                 {New Ribbon1()})
    Else
        Return Globals.Factory.GetRibbonFactory().CreateRibbonManager _
            (New Microsoft.Office.Tools.Ribbon.IRibbonExtension() _
                 {New Ribbon2()})
    End If
End Function
    protected override Microsoft.Office.Core.IRibbonExtensibility
CreateRibbonExtensibilityObject()
    {
        if (myCondition == true)
        {
            return Globals.Factory.GetRibbonFactory().CreateRibbonManager(
                new Microsoft.Office.Tools.Ribbon.IRibbonExtension[] { new Ribbon1() });
        }
        else
        {
            return Globals.Factory.GetRibbonFactory().CreateRibbonManager(
                new Microsoft.Office.Tools.Ribbon.IRibbonExtension[] { new Ribbon2() });
        }
    }

Per i progetti destinati a .NET Framework 3.5, aggiungere il codice seguente:

Protected Overrides Function CreateRibbonExtensibilityObject() As  _
    Microsoft.Office.Core.IRibbonExtensibility
    If myCondition = True Then
        Return New Microsoft.Office.Tools.Ribbon.RibbonManager _
            (New Microsoft.Office.Tools.Ribbon.OfficeRibbon() _
                 {New Ribbon1()})
    Else
        Return New Microsoft.Office.Tools.Ribbon.RibbonManager _
            (New Microsoft.Office.Tools.Ribbon.OfficeRibbon() _
                {New Ribbon2()})
    End If
End Function
    protected override Microsoft.Office.Core.IRibbonExtensibility
CreateRibbonExtensibilityObject()
    {
        if (myCondition == true)
        {
            return new Microsoft.Office.Tools.Ribbon.RibbonManager(
                new Microsoft.Office.Tools.Ribbon.OfficeRibbon[] 
                    { new Ribbon1() });
        }
        else
        {
            return new Microsoft.Office.Tools.Ribbon.RibbonManager(
                new Microsoft.Office.Tools.Ribbon.OfficeRibbon[] 
                    { new Ribbon2() });
        }
    }

Argomenti correlati

Titolo

Descrizione

Procedura: iniziare a personalizzare la barra multifunzione

Viene illustrato come personalizzare la barra multifunzione di un'applicazione Microsoft Office, aggiungere un elemento Barra multifunzione (finestra di progettazione visiva) o Barra multifunzione (XML) a un progetto di Office.

Finestra di progettazione della barra multifunzione

Viene descritto come utilizzare la finestra di progettazione della barra multifunzione per aggiungere schede, gruppi e controlli personalizzati alla barra multifunzione di un'applicazione di Microsoft Office.

Procedura dettagliata: creazione di una scheda personalizzata utilizzando la finestra di progettazione della barra multifunzione

Viene illustrato come creare una scheda personalizzata della barra multifunzione utilizzando la finestra di progettazione della barra multifunzione. Questa finestra di progettazione può essere utilizzata per aggiungere e posizionare controlli sulla scheda personalizzata.

Cenni preliminari sul modello a oggetti della barra multifunzione

Vengono forniti cenni preliminari su un modello a oggetti fortemente tipizzato per ottenere e impostare le proprietà dei controlli della barra multifunzione in fase di esecuzione.

Procedura dettagliata: aggiornamento dei controlli di una barra multifunzione in fase di esecuzione

Viene illustrato come utilizzare il modello a oggetti della barra multifunzione per aggiornare i controlli di una barra multifunzione dopo che quest'ultima è stata caricata nell'applicazione Office.

Personalizzazione di una barra multifunzione per Outlook

Vengono fornite indicazioni per personalizzare la barra multifunzione in Microsoft Office Outlook.

Personalizzazione di una barra multifunzione per InfoPath

Vengono fornite indicazioni per personalizzare la barra multifunzione in Microsoft Office InfoPath.

Accesso alla barra multifunzione in fase di esecuzione

Viene illustrato come mostrare, nascondere o modificare la barra multifunzione e consentire agli utenti di eseguire il codice dai controlli in un riquadro attività personalizzato, un riquadro azioni o un'area del modulo di Outlook.

Procedura: modificare la posizione di una scheda nella barra multifunzione

Viene illustrato come modificare l'ordine delle schede in una barra multifunzione.

Procedura: personalizzare una scheda incorporata

Viene illustrato come aggiungere gruppi e controlli a una scheda incorporata.

Procedura: personalizzare il menu Microsoft Office

Viene illustrato come utilizzare la finestra di progettazione della barra multifunzione per aggiungere i controlli al menu visualizzato quando si fa clic sulla scheda File (per Office 2010) o sul pulsante Microsoft Office (per Office 2007).

Procedura: aggiungere un pulsante di visualizzazione della finestra di dialogo a un gruppo della barra multifunzione

Viene illustrato come aggiungere un pulsante di visualizzazione della finestra di dialogo a qualsiasi gruppo della barra multifunzione.

Procedura: esportare una barra multifunzione dalla finestra di progettazione in un elemento XML della barra

Viene illustrato come personalizzare la barra multifunzione in modalità avanzate esportandola dalla finestra di progettazione nell'XML della barra multifunzione.

Elemento XML della barra multifunzione

Viene descritto come è possibile personalizzare una barra multifunzione utilizzando l'elemento XML della barra multifunzione.

Procedura dettagliata: creazione di una scheda personalizzata utilizzando la finestra di progettazione della barra multifunzione

Viene illustrato come creare una scheda personalizzata della barra multifunzione utilizzando l'elemento Barra multifunzione (XML).