Introduzione a Windows Ribbon Framework

Il framework della barra multifunzione di Windows è un sistema di presentazione dei comandi avanzato che offre un'alternativa moderna ai menu a livelli, alle barre degli strumenti e ai riquadri attività delle applicazioni Windows tradizionali.

Un nuovo paradigma di comando

Il framework della barra multifunzione è una raccolta di API Microsoft Win32 che supportano una serie di nuove funzionalità dell'interfaccia utente per gli sviluppatori Windows.

Questo framework di comando avanzato e moderno dell'interfaccia utente offre:

  • Implementazione semplice per nuove applicazioni framework della barra multifunzione e migrazione semplice di applicazioni Win32 esistenti.
  • Aspetto e comportamento coerenti tra applicazioni della barra multifunzione.
  • Conformità alle linee guida per l'interfaccia utente di Windows per un'esperienza windows di prima classe tramite standard di accessibilità, supporto dello stile visivo (liing), regolazioni a contrasto elevato automatico e consapevolezza di punti elevati per pollice (dpi).

Il framework della barra multifunzione è costituito da due componenti dell'interfaccia utente primaria:

  • La barra dei comandi della barra multifunzione, composta dalla barra degli strumenti di accesso rapido (QAT) che espone ed evidenzia vari comandi della barra multifunzione, come specificato dall'utente o dall'applicazione, e una riga di tabulazione contenente il menu dell'applicazione, le schede standard o contestuali e un pulsante della Guida.
  • Un sistema di menu di scelta rapida avanzato.

Una combinazione di interfacce XML dichiarative e COM native viene usata per separare la presentazione e la funzionalità di questi componenti.

Visualizzazioni

I componenti principali dell'interfaccia utente del framework della barra multifunzione, la barra dei comandi della barra multifunzione e il sistema di menu di scelta rapida, sono differenziati in modo strutturale tramite Visualizzazioni. Il framework supporta due visualizzazioni: la visualizzazione della barra multifunzione e la visualizzazione ContextPopup .

Visualizzazione barra multifunzione

L'interfaccia utente della visualizzazione della barra multifunzione è la funzionalità primaria del framework della barra multifunzione e offre l'esperienza utente di nuova generazione per la presentazione di comandi nelle applicazioni Windows.

La barra dei comandi è una barra dei comandi che espone le principali funzionalità di un'applicazione tramite una serie di schede nella parte superiore di una finestra dell'applicazione. È simile alla funzionalità e all'aspetto dell'interfaccia utente fluente di Microsoft Office 2007. La barra multifunzione fornisce un punto di contatore intuitivo per il processo di valutazione e errore dell'individuazione dei comandi tipica dei sistemi di menu di Windows standard. Ottimizzato per l'efficienza e la individuabilità, la barra multifunzione facilita la ricerca, la comprensione e l'uso dei comandi con clic e sequenze di tasti minimi del mouse tramite un sistema di controlli standard, raccolte e anteprima live.

L'immagine seguente illustra l'implementazione del framework della barra multifunzione in Paint per Windows 7.

screenshot che mostra l'implementazione della barra multifunzione in paint per windows 7.

Visualizzazione ContextPopup

La visualizzazione ContextPopup , tramite il controllo Popup di contesto, fornisce un sistema di menu di scelta rapida più avanzato rispetto a quello disponibile con le applicazioni Windows precedenti. Un popup di contesto può essere distribuito solo nel supporto di una barra multifunzione, un popup di contesto autonomo non è supportato dal framework della barra multifunzione.

Architettura della barra multifunzione

Al contrario del modello di sviluppo dell'interfaccia utente di Windows basato sul controllo tradizionale, lo sviluppo dell'interfaccia utente del framework della barra multifunzione di Windows si basa sul concetto più astratto dei comandi. Concentrandosi sui comandi associati ai controlli, anziché sui controlli stessi, il framework è in grado di modificare automaticamente l'interfaccia utente in risposta allo stato di esecuzione del comando recuperato dall'applicazione host della barra multifunzione.

Un'applicazione che usa il framework della barra multifunzione espone i comandi senza essere inseriti con i dettagli relativi al modo in cui il comando è rappresentato nell'interfaccia utente. Questa operazione viene talvolta definita modello di interfaccia utente basata su finalità. Il tipo di comando, le relative proprietà e le relative risorse definiscono la finalità del comando per l'applicazione. Ad esempio, l'input del mouse, l'input della tastiera o anche la scuotezione di un dispositivo giroscopico può causare l'esecuzione dello stesso comando che l'applicazione riguarda solo l'esecuzione del comando, non con il modo in cui è stato richiamato.

Il framework della barra multifunzione offre questa flessibilità separando le funzionalità dalla presentazione con due strutture di sviluppo distinte: un linguaggio di markup basato su Extensible Application Markup Language (XAML) per dichiarare i controlli e il layout visivo di un'implementazione della barra multifunzione e interfacce basate su COM C++ per inizializzare il framework e gestire gli eventi in fase di esecuzione. Questa distinzione consente agli sviluppatori e ai progettisti dell'interfaccia utente di essere esclusivamente responsabili dell'aspetto di un'applicazione della barra multifunzione, mentre la funzionalità principale rimane il dominio dei tecnici software.

Per altre informazioni, vedere Informazioni sui comandi e sui controlli.

API della barra multifunzione

Le API della barra multifunzione forniscono le connessioni necessarie tra una visualizzazione e l'applicazione host della barra multifunzione. Queste API sono costituite dalle interfacce e dalle chiavi delle proprietà seguenti:

  • Set di interfacce COM implementate dal framework della barra multifunzione per eseguire i servizi dell'interfaccia utente.

    Interfaccia Descrizione
    IUIContextualUI Definisce i metodi per la funzionalità principale della visualizzazione ContextPopup .
    IUIFramework Definisce i metodi che supportano la funzionalità di base delle visualizzazioni Della barra multifunzione e contextPopup .
    IUIRibbon Definisce i metodi per specificare impostazioni e proprietà per una visualizzazione della barra multifunzione .
    IUISimplePropertySet Definisce un metodo per recuperare il valore identificato da una chiave di proprietà. Questa interfaccia viene implementata dal framework della barra multifunzione e viene implementata anche dall'applicazione host per ogni elemento nell'oggetto IUICollection di una raccolta di elementi.
    Quando implementata dall'applicazione host, il metodo definito da questa interfaccia viene usato per recuperare un valore della chiave di proprietà per l'elemento selezionato in IUICollection.
    IUICollection Definisce i metodi per modificare in modo dinamico i controlli basati su raccolte, ad esempio la barra multifunzione QAT e le raccolte basate su raccolte, in fase di esecuzione.
    IUIImage Definisce il metodo per recuperare un'immagine per la visualizzazione nell'interfaccia utente della barra multifunzione.
    IUIImageFromBitmap Definisce il metodo factory per la creazione di un oggetto IUIImage .
  • Set di interfacce COM implementate dall'applicazione host della barra multifunzione che il framework chiama in risposta alle modifiche dell'interfaccia utente.

    Interfaccia Descrizione
    IUIApplication Definisce i metodi del callback dell'applicazione per il framework della barra multifunzione.
    IUICommandHandler Definisce i metodi per raccogliere informazioni sui comandi e gestire gli eventi comando dal framework della barra multifunzione.
    IUICollectionChangedEvent Definisce il metodo necessario per gestire le modifiche a una raccolta in fase di esecuzione.
  • Set di chiavi di proprietà che definiscono quali proprietà dell'interfaccia utente l'applicazione ha il controllo a livello di codice.

    Tipo di chiave della proprietà Descrizione
    Raccolta Definisce le proprietà per i controlli basati sulla raccolta della barra multifunzione.
    Selezione colori Definisce le proprietà per i controlli selezione colori della barra multifunzione.
    Carattere Definisce le proprietà per FontControl della barra multifunzione.
    Global Definisce le proprietà globali per il framework della barra multifunzione.
    Risorsa Definisce le proprietà delle risorse della barra multifunzione.
    Barra multifunzione Definisce le proprietà della visualizzazione della barra multifunzione.
    State Definisce le proprietà per lo stato o il contesto del controllo della barra multifunzione.

Sicurezza e privacy

La DLL del framework della barra multifunzione (uiribbon.dll) viene eseguita in-process e ha gli stessi privilegi dell'applicazione host. La barra multifunzione accetta solo ciò che l'applicazione host fornisce come input o input utente da controlli strettamente vincolati, ad esempio la casella combinata spinner e modificabile.

Inoltre, il framework non archivia in modo permanente alcuna informazione, ad eccezione di ciò che viene fornito dall'applicazione host o raccolto (come autorizzato dall'utente finale) tramite il programma di esperienza cliente windows esplicito.

Accessibilità e localizzazione

Per fornire un'interfaccia utente altamente accessibile, il framework della barra multifunzione implementa l'accessibilità attiva Microsoft. Popolando automaticamente le proprietà di Accessibilità attiva Microsoft pertinenti con informazioni valide e utili, il framework riduce significativamente il carico per gli sviluppatori per offrire un'esperienza inclusiva per tutti gli utenti.

Per altre informazioni sull'accessibilità nel framework della barra multifunzione, vedere Uso dell'accessibilità attiva nell'interfaccia utente di Office Fluent 2007.

Inoltre, il framework della barra multifunzione è una funzionalità di Windows e, di conseguenza, viene localizzata per tutte le lingue supportate da Windows. Gli sviluppatori, tuttavia, sono responsabili della localizzazione delle risorse specifiche dell'applicazione.

Conclusione

La barra multifunzione è una nuova e coinvolgente forma di presentazione dei comandi che gli sviluppatori di applicazioni, gli architetti e i progettisti devono considerare durante la progettazione e la creazione di nuove applicazioni o l'aggiornamento di quelli esistenti.

Il Forum di sviluppo della barra multifunzione di Windows è disponibile per discutere gli argomenti e porre domande relative allo sviluppo di applicazioni che implementano il framework della barra multifunzione di Windows.

Dichiarazione di comandi e controlli con markup della barra multifunzione

Linee guida per l'esperienza utente della barra multifunzione

Processo di progettazione della barra multifunzione