Condividi tramite


Finestre di dialogo di Windows 7 (nozioni di base sulla progettazione)

Nota

Questa guida di progettazione è stata creata per Windows 7 e non è stata aggiornata per le versioni più recenti di Windows. Gran parte delle linee guida si applica ancora in linea di principio, ma la presentazione e gli esempi non riflettono le linee guida di progettazione correnti.

Una finestra di dialogo è una finestra secondaria che consente agli utenti di eseguire un comando, porre una domanda agli utenti o fornire informazioni o feedback sullo stato di avanzamento.

screen shot identifying dialog box elements

Finestra di dialogo tipica.

Le finestre di dialogo sono costituite da una barra del titolo (per identificare il comando, la funzionalità o il programma da cui proviene una finestra di dialogo), un'istruzione principale facoltativa (per spiegare l'obiettivo dell'utente con la finestra di dialogo), vari controlli nell'area del contenuto (per presentare le opzioni) e pulsanti di commit (per indicare come l'utente vuole eseguire il commit all'attività).

Le finestre di dialogo hanno due tipi fondamentali:

  • Le finestre di dialogo modali richiedono che gli utenti completino e chiudano prima di continuare con la finestra del proprietario. Queste finestre di dialogo vengono usate meglio per attività critiche o poco frequenti che richiedono il completamento prima di continuare.
  • Le finestre di dialogo senza modalità consentono agli utenti di passare dalla finestra di dialogo alla finestra di proprietario in base alle esigenze. Queste finestre di dialogo vengono usate meglio per attività frequenti, ripetitive e in corso.

Una finestra di dialogo attività è una finestra di dialogo implementata usando l'API (Application Programming Interface) della finestra di dialogo attività. Sono costituiti dalle parti seguenti, che possono essere assemblate in una varietà di combinazioni:

  • Barra del titolo da cui identificare l'applicazione o la funzionalità di sistema da cui proviene la finestra di dialogo.
  • Un'istruzione principale, con un'icona facoltativa, per identificare l'obiettivo dell'utente con il dialogo.
  • Area di contenuto per informazioni e controlli descrittivi.
  • Area dei comandi per i pulsanti di commit, inclusi un pulsante Annulla e altre opzioni facoltative e Non visualizzare di nuovo questo <elemento> .
  • Area della nota a piè di pagina per spiegazioni aggiuntive e assistenza facoltative, in genere destinate a utenti meno esperti.

screen shot of a typical task dialog box

Finestra di dialogo di attività tipica.

Le finestre di dialogo delle attività sono consigliate ogni volta che sono appropriate perché sono facili da creare e ottengono un aspetto coerente. Le finestre di dialogo attività richiedono Windows Vista o versioni successive, quindi non sono adatte per le versioni precedenti di Microsoft Windows.

Un riquadro attività è simile a una finestra di dialogo, ad eccezione del fatto che viene presentato all'interno di un riquadro della finestra anziché in una finestra separata. Di conseguenza, i riquadri attività hanno un aspetto più diretto e contestuale rispetto alle finestre di dialogo. Anche se tecnicamente non sono uguali, i riquadri attività sono così simili alle finestre di dialogo presentate in questo articolo.

screen shot of a typical task pane

Riquadro attività tipico.

Le finestre delle proprietà sono un tipo specializzato di finestra di dialogo utilizzato per visualizzare e modificare le proprietà per un oggetto, una raccolta di oggetti o un programma. Inoltre, le finestre delle proprietà supportano in genere diverse attività, mentre le finestre di dialogo in genere supportano una singola attività o un singolo passaggio in un'attività. Poiché l'utilizzo è specializzato, le finestre delle proprietà vengono trattate in un set diverso di linee guida.

Le finestre di dialogo possono avere schede e, in tal caso, vengono chiamate finestre di dialogo a schede. Le finestre delle proprietà sono determinate dalla presentazione delle proprietà, non dall'uso delle schede.

Nota: le linee guida relative al layout, alla gestione delle finestre di dialogo, alle finestre di dialogo comuni, alle finestre delle proprietà, alle procedure guidate, alle conferme, ai messaggi di errore e ai messaggi di avviso vengono presentati in articoli separati.

Si tratta dell'interfaccia utente corretta?

Per decidere, considerare queste domande:

  • Lo scopo è fornire agli utenti informazioni, porre una domanda agli utenti o consentire agli utenti di selezionare le opzioni per eseguire un comando o un'attività? In caso contrario, usare un'altra interfaccia utente.
  • Lo scopo è visualizzare e modificare le proprietà per un oggetto, una raccolta di oggetti o un programma? In tal caso, usare invece una finestra delle proprietà o una barra degli strumenti.
  • Lo scopo è presentare una raccolta di comandi o strumenti? In tal caso, usare una finestra della barra degli strumenti o della tavolozza.
  • Lo scopo è verificare che l'utente voglia procedere con un'azione? C'è un motivo chiaro per non procedere e una ragionevole probabilità che a volte gli utenti non lo faranno? In tal caso, usare una conferma.
  • Lo scopo è fornire un messaggio di errore o di avviso? In tal caso, usare un messaggio di errore o un messaggio di avviso.
  • Lo scopo è:
    • Apri file
    • Salvare i file
    • Aprire cartelle
    • Trova o sostituisci testo
    • Stampare un documento
    • Selezionare gli attributi di una pagina stampata
    • Selezionare un tipo di carattere
    • Scegliere un colore
    • Cercare un file, una cartella, un computer o una stampante
    • Cercare utenti, computer o gruppi in Microsoft Active Directory
    • Richiedere un nome utente e una password?

In tal caso, usare invece il dialogo comune appropriato. Molti di questi dialoghi comuni sono estendibili.

  • Lo scopo è eseguire un'attività in più passaggi che richiede più di una singola finestra? In tal caso, usare invece un flusso di attività o una procedura guidata.
  • Lo scopo è informare gli utenti di un evento di sistema o programma non correlato all'attività utente corrente, che non richiede un'azione immediata dell'utente e gli utenti possono ignorare liberamente? In tal caso, usare invece una notifica .
  • Lo scopo è mostrare lo stato del programma? In tal caso, usare invece una barra di stato.
  • È preferibile usare l'interfaccia utente sul posto? Le finestre di dialogo possono interrompere il flusso dell'utente richiedendo attenzione. In alcuni casi l'interruzione del flusso è giustificato, ad esempio quando l'utente deve eseguire un'azione esterna al contesto corrente. In altri casi, un approccio migliore consiste nel presentare l'interfaccia utente nel contesto, direttamente con l'interfaccia utente sul posto (ad esempio un riquadro attività) o su richiesta usando la divulgazione progressiva.
  • Lo scopo è quello di visualizzare un problema di input utente non critico o una condizione speciale? In tal caso, usare invece un fumetto .
  • Per i flussi di attività, è preferibile usare un'altra pagina? In genere si vuole che un'attività funzioni da pagina a pagina all'interno di una singola finestra. Usare le finestre di dialogo per confermare i comandi sul posto, per ottenere l'input per i comandi sul posto e per eseguire attività secondarie autonome che vengono eseguite in modo ottimale in modo indipendente ed esterno al flusso di attività principale.
  • Per selezionare le opzioni, è probabile che gli utenti modifichino le opzioni? In caso contrario, considerare alternative, ad esempio:
    • Uso delle opzioni predefinite senza chiedere, ma consentire agli utenti di apportare modifiche in un secondo momento.
    • Specificare una versione con opzioni (ad esempio, Stampa... in un menu) e una versione senza opzioni (ad esempio, Stampa sulla barra degli strumenti). In genere, i comandi della barra degli strumenti devono essere immediati ed evitare di visualizzare le finestre di dialogo.
  • Per selezionare le opzioni, esiste un modo più semplice e diretto per presentare le opzioni? In tal caso, prendere in considerazione le alternative, ad esempio:
    • Uso di un pulsante di divisione per selezionare le varianti di un comando.
    • Uso di un sottomenu per comandi, caselle di controllo, pulsanti di opzione ed elenchi semplici.

Screenshot that shows a menu and sub-menu.

screen shot of a menu and submenu

In questi esempi vengono usati sottomenu anziché finestre di dialogo per selezioni semplici.

Concetti relativi alla progettazione

Quando usate correttamente, le finestre di dialogo sono un ottimo modo per dare potenza e flessibilità al programma. In caso di uso improprio, le finestre di dialogo sono un modo semplice per infastidire gli utenti, interrompere il flusso e rendere il programma indiretto e noioso da usare. Le finestre di dialogo modali richiedono l'attenzione degli utenti. Le finestre di dialogo sono spesso più facili da implementare rispetto alle interfacce utente alternative, quindi tendono a essere sovrautilizzate.

Una finestra di dialogo è più efficace quando le caratteristiche di progettazione corrispondono all'utilizzo. La progettazione di una finestra di dialogo è in gran parte determinata dallo scopo (offrire opzioni, porre domande, fornire informazioni o feedback), tipo (modale o modeless) e interazione dell'utente (richiesta, risposta facoltativa o riconoscimento), mentre l'utilizzo è in gran parte determinato dal contesto (utente o programma avviato), dalla probabilità di azione dell'utente e dalla frequenza di visualizzazione.

Per progettare finestre di dialogo efficaci, utilizzare gli elementi seguenti in modo efficace:

  • Testo della finestra di dialogo
  • Istruzioni principali
  • Non visualizzare più l'opzione di questo <elemento>

Se fai solo una cosa...

Assicurarsi che la progettazione della finestra di dialogo (determinata dallo scopo, dal tipo e dall'interazione dell'utente) corrisponda al relativo utilizzo (determinato dal contesto, dalla probabilità dell'azione dell'utente e dalla frequenza di visualizzazione).

Modelli di utilizzo

Le finestre di dialogo hanno diversi modelli di utilizzo:

  • Le finestre di dialogo delle domande (tramite pulsanti) chiedono agli utenti una singola domanda o per confermare un comando e usare risposte semplici nei pulsanti di comando disposti orizzontalmente.
  • Le finestre di dialogo delle domande (usando i collegamenti ai comandi) chiedono agli utenti una singola domanda o di selezionare un'attività da eseguire e usare risposte dettagliate nei collegamenti ai comandi disposti verticalmente.
  • Le finestre di dialogo di scelta presentano agli utenti un set di scelte, in genere per specificare un comando più completamente. A differenza dei dialoghi di domanda, i dialoghi di scelta possono porre più domande.
  • Le finestre di dialogo di stato presentano agli utenti un feedback sullo stato di avanzamento durante un'operazione lunga (più di cinque secondi), insieme a un comando per annullare o arrestare l'operazione.
  • Le finestre di dialogo informative visualizzano le informazioni richieste dall'utente.

Linee guida

Generale

  • Non usare finestre di dialogo scorrevoli. Non usare finestre di dialogo che richiedono la visualizzazione completa di una barra di scorrimento durante l'utilizzo normale. Riprogettare invece la finestra di dialogo. È consigliabile usare la divulgazione progressiva o le schede.

  • Non avere una barra dei menu o una barra di stato. Fornire invece l'accesso ai comandi e allo stato direttamente nella finestra di dialogo stessa o usando i menu di scelta rapida nei controlli pertinenti.

    • Eccezione: le barre dei menu sono accettabili quando viene usata una finestra di dialogo per implementare una finestra primaria, ad esempio un'utilità.

    Risposta errata:

    screen shot of a dialog box with a menu bar

    In questo esempio Trova certificati è una finestra di dialogo senza modalità con una barra dei menu.

  • Se una finestra di dialogo richiede attenzione immediata e il programma non è attivo, lampeggiare il pulsante della barra delle applicazioni tre volte per attirare l'attenzione e lasciarlo evidenziato. Non eseguire altre operazioni: non ripristinare o attivare la finestra e non riprodurre effetti sonori. Rispettare invece la selezione dello stato della finestra dell'utente e consentire all'utente di attivare la finestra quando è pronto.

  • Per altre linee guida ed esempi, vedere Barra delle applicazioni.

  • Usare per attività critiche o poco frequenti che richiedono il completamento prima di continuare.
  • Usare un modello di commit ritardato in modo che le modifiche non vengano applicate fino a quando non viene eseguito il commit esplicito.
  • Implementare l'uso di una finestra di dialogo di attività ogni volta che è appropriato per ottenere un aspetto coerente. Le finestre di dialogo attività richiedono Windows Vista o versioni successive, quindi non sono adatte per le versioni precedenti di Windows.

Finestre di dialogo senza modalità

  • Usare per attività frequenti, ripetitive e in corso.
  • Usare un modello di commit immediato in modo che le modifiche vengano applicate immediatamente.
  • Per le finestre di dialogo senza modalità, usare un pulsante di comando Chiudi esplicito nella finestra di dialogo per chiudere la finestra. Per entrambi, usare un pulsante Chiudi sulla barra del titolo per chiudere la finestra.
  • Prendere in considerazione la possibilità di rendere ancorabili le finestre di dialogo senza modalità. I dialoghi senza modalità ancorabili consentono un posizionamento più flessibile.

screen shot of a dockable, modeless dialog box

Alcune finestre di dialogo senza modalità utilizzate in Microsoft Office sono ancorabili.

Più finestre di dialogo

  • Non visualizzare più finestre di dialogo di scelta di proprietà alla volta da una finestra di dialogo di scelta del proprietario. La visualizzazione di più di una rende difficile il significato dei pulsanti di commit per gli utenti. È possibile visualizzare altri tipi di finestre di dialogo (ad esempio finestre di dialogo di domanda) in base alle esigenze.
  • Per una sequenza di dialoghi correlati, è consigliabile usare una finestra di dialogo a più pagine, se possibile. Usare i singoli dialoghi se non sono chiaramente correlati.

Finestre di dialogo a più pagine

  • Usare una finestra di dialogo a più pagine anziché singole finestre di dialogo quando si dispone della sequenza di pagine correlate seguente:
    • Una singola pagina di input (facoltativa)
    • Pagina di stato
    • Una singola pagina dei risultati

La pagina di input è facoltativa perché l'attività potrebbe essere stata avviata altrove. In questo modo, l'esperienza risultante offre un'esperienza stabile, semplice e leggera.

screen shot of a progress bar

screen shot of 'no problems found' message

In questo esempio, Diagnostica rete Windows è costituito da pagine di avanzamento e risultati.

  • Non usare una finestra di dialogo a più pagine se la pagina di input è una finestra di dialogo standard. In questo caso la coerenza dell'uso di un dialogo standard è più importante.
  • Non usare i pulsanti Avanti o Indietro e non hanno più di tre pagine. Le finestre di dialogo a più pagine sono per le attività in un unico passaggio con commenti e suggerimenti. Non sono procedure guidate, usate per le attività in più passaggi. Le procedure guidate hanno un aspetto pesante e indiretto rispetto alle finestre di dialogo a più pagine.
  • Nella pagina di input usare pulsanti di comando o collegamenti di comando specifici per avviare l'attività.
  • Usare un pulsante Annulla nelle pagine di input e stato e un pulsante Chiudi nella pagina dei risultati.

Sviluppatori: è possibile creare finestre di dialogo di attività a più pagine usando il messaggio TDM_NAVIGATE_PAGE .

Presentazione

Per semplificare l'individuazione e l'accesso delle finestre di dialogo, associare chiaramente il dialogo all'origine e funzionare bene con più monitor:

  • Inizialmente vengono visualizzate le finestre di dialogo "centrate" nella parte superiore della finestra del proprietario. Per la visualizzazione successiva, valutare la possibilità di visualizzarla nell'ultima posizione (rispetto alla finestra del proprietario) se è probabile che sia più conveniente.

diagram of dialog box centered on window behind it

Inizialmente i dialoghi al centro nella parte superiore della finestra del proprietario.

  • Se un dialogo è contestuale, visualizzarlo vicino all'oggetto da cui è stato avviato. Tuttavia, posizionarlo fuori strada (preferibilmente sfalsare verso il basso e verso destra) in modo che l'oggetto non sia coperto dalla finestra di dialogo.

diagram of dialog box offset down and to the right

Le proprietà di un oggetto vengono visualizzate vicino all'oggetto .

  • Per le finestre di dialogo senza modalità, visualizzare inizialmente nella parte superiore della finestra del proprietario per semplificare la ricerca. Se l'utente attiva la finestra del proprietario, potrebbe nascondere la finestra di dialogo senza modalità.
  • Se necessario, modificare la posizione iniziale in modo che l'intera finestra di dialogo sia visibile all'interno del monitoraggio di destinazione. Se una finestra ridimensionabile è maggiore del monitor di destinazione, ridurla.
  • Quando viene rieseguita una finestra di dialogo, è consigliabile visualizzarla nello stesso stato dell'ultimo accesso. Al termine, salvare il monitoraggio usato, le dimensioni della finestra, la posizione e lo stato (ingrandita e ripristino). Nella riproduzione ripristinare le dimensioni, la posizione e lo stato del dialogo salvati usando il monitoraggio appropriato. Valutare anche la possibilità di rendere persistenti questi attributi tra le istanze del programma in base all'utente.
  • Per le finestre ridimensionabili, impostare una dimensione minima della finestra se è presente una dimensione inferiore alla quale il contenuto non è più utilizzabile. Valutare la possibilità di modificare la presentazione per rendere il contenuto utilizzabile con dimensioni inferiori.

screen shot of centered media player buttons

In questo esempio, Lettore multimediale Windows modifica il relativo formato quando la finestra diventa troppo piccola per il formato standard.

  • Non usare l'attributo Always On Top.
    • Eccezione: usare solo quando una finestra di dialogo implementa un'operazione essenzialmente modale, ma deve essere sospesa brevemente per accedere alla finestra di proprietario. Ad esempio, durante il controllo ortografico di un documento, gli utenti possono occasionalmente lasciare la finestra di dialogo di controllo ortografico e accedere al documento per correggere gli errori.

Per altre informazioni ed esempi, vedere Gestione finestre.

Barre del titolo

  • Le finestre di dialogo non hanno icone della barra del titolo. Le icone della barra del titolo vengono usate come distinzione visiva tra le finestre primarie e le finestre secondarie.
    • Eccezione: se viene usata una finestra di dialogo per implementare una finestra primaria (ad esempio un'utilità) e quindi viene visualizzata sulla barra delle applicazioni, la barra del titolo è a forma di icona. In questo caso, ottimizzare il titolo per la visualizzazione sulla barra delle applicazioni posizionando concisamente le informazioni di distinzione.
  • Le finestre di dialogo hanno sempre un pulsante Chiudi. I dialoghi senza modalità possono anche avere un pulsante Riduci a icona. I dialoghi ridimensionabili possono avere un pulsante Ingrandisci.
  • Non disabilitare il pulsante Chiudi. Avere un pulsante Chiudi consente agli utenti di mantenere il controllo consentendo loro di chiudere le finestre che non vogliono.
    • Eccezione: per le finestre di dialogo di stato, è possibile disabilitare il pulsante Chiudi se l'attività deve essere eseguita fino al completamento per ottenere uno stato valido o impedire la perdita di dati.
  • Il pulsante Chiudi sulla barra del titolo dovrebbe avere lo stesso effetto del pulsante Annulla o Chiudi all'interno della finestra di dialogo. Non dare mai lo stesso effetto di OK.
  • Se la barra del titolo didascalia e l'icona sono già visualizzate in modo prominente nella parte superiore della finestra, è possibile nascondere la barra del titolo didascalia e l'icona per evitare la ridondanza. Tuttavia, devi comunque impostare un titolo appropriato internamente per l'uso da parte di Windows.

Interazione

  • Quando viene visualizzata, le finestre di dialogo avviate dall'utente devono sempre concentrarsi sull'input. Le finestre di dialogo avviate dal programma non devono avere lo stato attivo per l'input perché l'utente potrebbe interagire con un'altra finestra. Tali interazioni sono state indirizzate in modo non intenzionale alla finestra di dialogo.

  • Assegnare lo stato attivo di input iniziale al controllo con cui gli utenti possono interagire per primi, che in genere (ma non sempre) il primo controllo interattivo. Evitare di assegnare lo stato attivo iniziale all'input a un collegamento della Guida.

  • Per lo spostamento tramite tastiera, l'ordine di tabulazioni deve scorrere in un ordine logico, in genere da sinistra a destra, dall'alto verso il basso. In genere l'ordine di tabulazioni segue l'ordine di lettura, ma è consigliabile effettuare queste eccezioni:

    • Inserire i controlli usati più di frequente in precedenza in ordine di tabulazioni.
    • Inserire i collegamenti della Guida nella parte inferiore di una finestra di dialogo, dopo i pulsanti di commit nell'ordine di tabulazioni.

    Quando si assegna l'ordine, si supponga che gli utenti visualizzino finestre di dialogo per lo scopo previsto; quindi, ad esempio, gli utenti visualizzano finestre di dialogo di scelta per effettuare scelte, non rivedere e fare clic su Annulla.

  • Premendo ESC si chiude sempre una finestra di dialogo attiva. Ciò vale per le finestre di dialogo con Annulla o Chiudi e anche se Annulla è stato rinominato in Chiudi perché i risultati non possono più essere annullati.

Chiavi di accesso

  • Quando possibile, assegnare chiavi di accesso univoche a tutti i controlli interattivi o alle relative etichette.Le caselle di testo di sola lettura sono controlli interattivi (perché gli utenti possono scorrere e copiare testo) in modo da trarre vantaggio dai tasti di scelta. Non assegnare chiavi di accesso a:

    • Pulsanti OK, Annulla e Chiudi. Immettere e ESC vengono usati per i tasti di scelta. Tuttavia, assegnare sempre un tasto di scelta a un controllo che indica OK o Annulla, ma ha un'etichetta diversa.

      screen shot of delete file dialog box

      In questo esempio il pulsante commit positivo ha una chiave di accesso assegnata.

    • Raggruppare le etichette. In genere, ai singoli controlli all'interno di un gruppo vengono assegnate chiavi di accesso, quindi l'etichetta di gruppo non ne ha bisogno. Tuttavia, se vi è una carenza di chiavi di accesso, assegnare una chiave di accesso all'etichetta di gruppo e non ai singoli controlli.

    • Pulsanti della Guida generici a cui si accede con F1.

    • Etichette di collegamento. Spesso sono presenti troppi collegamenti per assegnare chiavi di accesso univoche e i caratteri di sottolineatura usati spesso per indicare i collegamenti nascondono i caratteri di sottolineatura della chiave di accesso. In alternativa, accedere ai collegamenti con il tasto TAB.

    • Nomi di tabulazioni. Le schede vengono cicliche usando CTRL+TAB e CTRL+MAIUSC+TAB.

    • Pulsanti Sfoglia con etichetta "...". Questi pulsanti Sfoglia non possono essere assegnati in modo univoco ai tasti di scelta.

    • Controlli senza etichetta, ad esempio controlli di selezione, pulsanti di comando grafici e controlli di divulgazione progressiva senza etichetta.

    • Testo statico non etichettato o etichette per i controlli che non sono interattivi, ad esempio barre di stato.

  • Quando possibile, assegnare le chiavi di accesso per i comandi di uso comune in base alle assegnazioni di chiavi di accesso standard. Anche se le assegnazioni coerenti delle chiavi di accesso non sono sempre possibili, sono certamente preferite soprattutto per le finestre di dialogo usate di frequente.

  • Assegnare prima i tasti di scelta del pulsante di commit per assicurarsi di avere le assegnazioni di chiavi standard. Se non esiste un'assegnazione di chiave standard, usare la prima lettera della prima parola. Ad esempio, il tasto di scelta per i pulsanti Sì e No commit deve essere sempre "Y" e "N", indipendentemente dagli altri controlli nella finestra di dialogo.

  • Per semplificare la ricerca dei tasti di scelta, assegnare i tasti di scelta a un carattere visualizzato all'inizio dell'etichetta, idealmente il primo carattere, anche se è presente una parola chiave che viene visualizzata più avanti nell'etichetta.

  • Preferisce caratteri con larghezze larghe, ad esempio w, m e lettere maiuscole.

  • Preferisce un consonante distintivo o una vocale, ad esempio "x" in Exit.

  • Evitare di usare caratteri che rendono difficile la sottolineatura, ad esempio (dalla più problematica alla meno problematica):

    • Lettere con una sola larghezza di pixel, ad esempio i e l.
    • Lettere con discendenti, ad esempio g, j, p, q e y.
    • Lettere accanto a una lettera con un discendente.

Per altre linee guida ed esempi, vedi Tastiera.

Dialoghi di stato

Per le attività a esecuzione prolungata, si supponga che gli utenti eseguano un'altra operazione mentre l'attività viene completata. Progettare l'attività per l'esecuzione automatica.

  • Presentare agli utenti la finestra di dialogo di feedback dello stato se il completamento di un'operazione richiede più di cinque secondi, insieme a un comando per annullare o arrestare l'operazione.
    • Eccezione: per le procedure guidate e i flussi di attività, usare una finestra di dialogo modale per lo stato di avanzamento solo se l'attività rimane nella stessa pagina (anziché passare a un'altra pagina) e gli utenti non possono eseguire alcuna operazione durante l'attesa. In caso contrario, usare una pagina di stato o lo stato di avanzamento sul posto.
  • Se l'operazione è un'attività a esecuzione prolungata (oltre 30 secondi) e può essere eseguita in background, usare una finestra di dialogo di stato senza modalità in modo che gli utenti possano continuare a usare il programma durante l'attesa.
  • Finestre di dialogo di stato senza modalità:
    • Fare clic sul pulsante Riduci a icona sulla barra del titolo.
    • Vengono visualizzati sulla barra delle applicazioni.
  • Implementare finestre di dialogo di stato senza modalità in modo che continuino a essere eseguite anche se la finestra del proprietario è chiusa.

screen shot of copy dialog box with progress bar

In questo esempio, la copia del file continua anche se la finestra del proprietario è chiusa.

  • Specificare un pulsante di comando per interrompere l'operazione se sono necessari più di pochi secondi o se il potenziale non è mai stato completato. Etichettare il pulsante Annulla se l'annullamento restituisce l'ambiente allo stato precedente (senza effetti collaterali); in caso contrario, etichettare il pulsante Arresta per indicare che lascia intatta l'operazione parzialmente completata. È possibile modificare l'etichetta del pulsante da Annulla a Arresta al centro dell'operazione, se a un certo punto non è possibile restituire l'ambiente allo stato precedente.

screen shot of dialog box with cancel button

In questo esempio, l'interruzione della diagnosi del problema non ha alcun effetto collaterale.

  • Fornire un pulsante di comando per sospendere l'operazione se il completamento richiede più di alcuni minuti e impedisce agli utenti di svolgere il lavoro. In questo modo non forza l'utente a scegliere tra il completamento dell'attività e il completamento del lavoro.
  • Raccogliere tutte le informazioni che è possibile prima di avviare l'attività.
  • Se vengono rilevati problemi ripristinabili, chiedere agli utenti di risolvere tutti i problemi rilevati alla fine dell'attività. Se questo non è pratico, gli utenti si occupano di problemi man mano che si verificano.
  • Non abbandonare le attività in seguito a errori ripristinabili.

screen shot of dialog box with try again button

In questo esempio Esplora risorse consente agli utenti di continuare con l'attività dopo un errore ripristinabile.

  • Indicare i problemi attivando l'indicatore di stato rosso.

screen shot of progress bar and try again button

In questo esempio un disco rimovibile è stato rimosso durante una copia di file.

  • Se i risultati sono chiaramente evidenti agli utenti, chiudere automaticamente la finestra di dialogo di stato al completamento corretto. In caso contrario, usare il feedback solo per segnalare i problemi:
    • Per visualizzare commenti e suggerimenti semplici, visualizzare il feedback nella finestra di dialogo di stato e modificare il pulsante Annulla su Chiudi.
    • Per visualizzare commenti e suggerimenti dettagliati, chiudere la finestra di dialogo di stato e visualizzare una finestra di dialogo informativa.

Non usare una notifica per il feedback di completamento. Usare una finestra di dialogo di stato o una notifica di esito positivo dell'azione, ma non entrambe.

Tempo rimanente

  • Usare i formati di ora seguenti. Iniziare con il primo dei formati seguenti in cui l'unità temporale più grande non è zero, quindi passare al formato successivo dopo che l'unità temporale più grande diventa zero.

Per le barre di stato:

Se le informazioni correlate vengono visualizzate in un formato due punti:

Tempo rimanente: h ore, minuti

Tempo rimanente: m minuti, secondi

Tempo rimanente: secondi

Se lo spazio dello schermo è premium:

h ore, m min rimanenti

m mins, sec rimanenti

s secondi rimanenti

Altrimenti:

h ore, minuti rimanenti

m minuti, secondi rimanenti

s secondi rimanenti

Per le barre del titolo:

hh:mm rimanente

mm:ss rimanente

0:ss rimanenti

Questo formato compatto mostra prima le informazioni più importanti in modo che non venga troncato sulla barra delle applicazioni.

  • Fare stime accurate, ma non dare false precisione. Se l'unità più grande è di ore, assegnare minuti (se significativi) ma non secondi.

Risposta errata:

hh hours, mm minutes, ss seconds

  • Mantenere aggiornata la stima. Aggiornare le stime rimanenti almeno ogni 5 secondi.
  • Concentrarsi sul tempo rimanente perché questo è l'aspetto più importante per gli utenti delle informazioni. Assegnare tempo trascorso totale solo quando sono presenti scenari in cui il tempo trascorso è utile, ad esempio quando è probabile che l'attività venga ripetuta. Se la stima rimanente del tempo è associata a un indicatore di stato, non avere una percentuale di testo completo perché tali informazioni vengono trasmesse dall'indicatore di stato stesso.
  • Essere grammaticalmente corretti. Usare unità singolari quando il numero è uno.

Risposta errata:

1 minuti, 1 secondi

  • Usare la maiuscola in stile frase.

Per altre informazioni ed esempi, vedere Indicatore di stato.

Icone e grafica

Grafica

  • Non usare elementi grafici di grandi dimensioni che non servono alcuno scopo oltre a riempire spazio con caramelle oculari. Mantenere invece l'aspetto semplice.

Risposta errata:

screen shot of dialog box with a large graphic

In questo esempio, l'elemento grafico di grandi dimensioni non ha alcun scopo.

Icone della barra del titolo

  • Le finestre di dialogo non hanno icone della barra del titolo.
    • Eccezione: se viene usata una finestra di dialogo per implementare una finestra primaria (ad esempio un'utilità) e quindi viene visualizzata sulla barra delle applicazioni, la barra del titolo è a forma di icona.

Icone del corpo

  • Scegliere l'icona del corpo in base al modello di progettazione:
Modello Icona corpo
Finestre di dialogo domande
Programma, funzionalità, oggetto, icona di avviso (se potenziale perdita di dati o accesso al sistema), avviso di sicurezza o nessuno.
Dialoghi di scelta
Nessuno.
Dialoghi di stato
Nessuno (ma può avere un'animazione).
Dialoghi informativi
Nessuno.
  • Risposta errata:

screen shot of dialog box with warning icon

In questo esempio, un'icona di avviso viene usata in modo non corretto per una domanda che non comporta la potenziale perdita di dati o l'accesso al sistema.

  • Prendere in considerazione l'uso delle icone per aiutare gli utenti a riconoscere visivamente le funzionalità del programma. Questa tecnica è più efficace quando le icone sono facilmente riconoscibili e usate in diverse posizioni all'interno del programma.

screen shot of favorites dialog box with star icon

In questo esempio l'icona a stella gialla rappresenta Preferiti. L'icona è facilmente riconoscibile e viene usata in modo coerente in Windows per rappresentare Preferiti.

  • Usare le icone per aiutare gli utenti a riconoscere l'oggetto in questione.

screen shot of dialog box with powerpoint icon

In questo esempio, l'icona dell'oggetto consente agli utenti di riconoscere il tipo di file da aprire o salvare.

  • Prendere in considerazione l'uso delle icone per rendere le funzionalità autoesplicative.

images of arrows showing how to position monitor

In questo esempio queste icone consentono agli utenti di visualizzare l'effetto delle relative funzionalità.

  • Usare un'icona nelle finestre di dialogo Informazioni sulla finestra di dialogo per la personalizzazione dell'applicazione.

screen shot of about dialog box with windows logo

In questo esempio viene usata una bitmap in About Box per identificare e personalizzare l'applicazione.

Icone delle note a piè di pagina

  • Se si dispone di una nota a piè di pagina, è consigliabile usare un'icona a piè di pagina per riepilogare l'oggetto della nota a piè di pagina.

screen shot of dialog box with footnote icon

In questo esempio, l'icona della nota a piè di pagina indica che la domanda presenta implicazioni per la sicurezza.

  • Non usare un'icona a piè di pagina che ripete l'icona del corpo.
  • Non usare le icone standard di errore o informazioni. Le condizioni di errore devono essere trasmesse tramite l'icona del corpo e le note a piè di pagina sono sempre per informazioni, rendendo ridondante l'icona delle informazioni. Tuttavia, è possibile usare l'icona di avviso standard e lo scudo di sicurezza giallo per avvisare gli utenti di conseguenze rischiose.

Per altre informazioni ed esempi, vedere Icone.

Pulsanti commit

Note:

  • Queste linee guida non si applicano alle finestre di dialogo delle domande usando i collegamenti ai comandi, perché questo modello usa i collegamenti ai comandi anziché i pulsanti.
  • [Esegui] e [Non farlo] sono rispettivamente risposte affermative e negative all'istruzione principale.

Generale

  • Scegliere i pulsanti di commit in base al modello di progettazione:
Label valore
Modello
Pulsanti commit
Finestre di dialogo domande (tramite pulsanti)
Uno dei seguenti set di comandi concisi: Sì/No, Sì/No/Annulla, [Esegui]/Annulla, [Esegui]/[Non eseguire questa operazione], [Esegui]/[Non farlo]/[Non farlo]/Annulla.
Finestre di dialogo domande (tramite collegamenti)
Annullare.
Dialoghi di scelta
  • Finestre di dialogo modali: OK/Annulla o [Esegui]/Annulla
  • Finestre di dialogo senza modalità: pulsante Chiudi nella finestra di dialogo e nella barra del titolo
  • Riquadro attività: pulsante Chiudi sulla barra del titolo
Dialoghi di stato
Utilizzare Annulla se restituisce l'ambiente allo stato precedente (lasciando nessun effetto collaterale); in caso contrario, usare Stop.
Dialoghi informativi
Quasi.
  • Tutti i pulsanti di commit tranne Applica comportano la chiusura della finestra di dialogo.

  • Non confermare i pulsanti di commit. Farlo inutilmente può essere molto fastidioso. Eccezioni:

    • L'azione è potenzialmente irreversibile.
    • L'azione è chiaramente incoerente con altre azioni.
    • Se non è corretto, l'azione può comportare una perdita significativa di dati, tempo o impegno per conto dell'utente.

    Per altre linee guida ed esempi, vedere Conferme.

  • Non disabilitare i pulsanti di commit. Eccezioni:

    • Se gli utenti devono eseguire l'elevazione per apportare una modifica, disabilitare i pulsanti di commit positivi fino a quando l'utente non apporta una modifica. In questo modo si impedisce agli utenti di elevare solo per chiudere una finestra forzandoli a fare clic su Annulla.
    • Per altre eccezioni, vedere Disabilitazione o rimozione di controlli e assegnare messaggi di errore.
  • I pulsanti di commit allineati a destra in una singola riga nella parte inferiore della finestra di dialogo, ma sopra l'area delle note a piè di pagina. Eseguire questa operazione anche se è presente un singolo pulsante di commit (ad esempio OK).

    Risposta errata:

    screen shot of message with centered ok button

    In questo esempio il pulsante OK viene centrato in modo non corretto.

  • Presentare i pulsanti di commit nell'ordine seguente:

    1. OK/[Esegui]/Sì
    2. [Non eseguire]/No
    3. Annullamento
    4. Applica (se presente)
    5. Guida (se presente)
  • Se sono presenti molti pulsanti di commit correlati, consolidarli usando pulsanti di divisione.

  • Avere una netta separazione dai pulsanti di commit (che chiudono la finestra) e tutti gli altri pulsanti di comando (ad esempio Avanzate).

Risposta alle istruzioni principali

  • Usare pulsanti di commit positivi che sono risposte specifiche all'istruzione principale, anziché etichette generiche come OK o Sì/No. Gli utenti devono essere in grado di comprendere le opzioni leggendo solo il testo del pulsante. Eccezioni:

    • Usare Chiudi per le finestre di dialogo che non dispongono di impostazioni, ad esempio finestre di dialogo informative. Non usare mai Chiudi per le finestre di dialogo con impostazioni.

    • Usare OK quando le risposte "specifiche" sono ancora generiche, ad esempio Salva, Seleziona o Scegli. Usare OK quando si modifica un'impostazione specifica o una raccolta di impostazioni.

    • Per le finestre di dialogo legacy senza un'istruzione principale, è possibile usare etichette generiche come OK. Spesso tali finestre di dialogo non sono progettate per eseguire un'attività specifica, impedendo risposte più specifiche.

    • Alcune attività richiedono una lettura più ponderata e attenta per consentire agli utenti di prendere decisioni informate. Questo è in genere il caso con le conferme. In questi casi, è possibile usare le etichette dei pulsanti di commit generiche per forzare gli utenti a leggere le istruzioni principali e prevenire decisioni affrettate.

      Risposta corretta:

      screen shot of message with yes and no buttons

      In questo esempio, l'uso dei pulsanti di commit Sì/No impone agli utenti di leggere almeno l'istruzione principale.

  • In alternativa, è possibile aggiungere la parola "comunque" all'etichetta del pulsante commit positivo per indicare che la finestra di dialogo presenta un motivo per cui non procedere e che gli utenti devono leggere attentamente la finestra di dialogo prima di procedere.

    Risposta corretta:

    screen shot of message and uninstall anyway button

    In questo esempio, "comunque" viene aggiunto all'etichetta del pulsante di commit per indicare che gli utenti devono procedere con attenzione.

  • Usare Annulla o Chiudi per i pulsanti di commit negativi anziché risposte specifiche all'istruzione principale. Spesso gli utenti si rendono conto che non vogliono eseguire un'attività una volta visualizzata una finestra di dialogo. Se Annulla o Chiudi sono state etichettate per risposte specifiche, gli utenti dovranno leggere attentamente tutti i pulsanti di commit per determinare come annullare. L'assegnazione di etichette Annulla e Chiudi li rende sempre più facili da trovare. Eccezioni:

    • Non usare Sì/Annulla. Usare sempre Sì/No come coppia.
    • Usare una risposta specifica quando Cancel è ambiguo.
  • Non eseguire il mapping delle etichette generiche al significato specifico con il testo nell'area del contenuto. Usare invece etichette specifiche dei pulsanti di commit o una finestra di dialogo delle domande usando collegamenti se le etichette sono lunghe.

    Risposta errata:

    screen shot of message with unclear use of buttons

    In questo esempio viene eseguito il mapping di OK a Continua, l'opzione Annulla viene mappata a Resta nella pagina.

Pulsanti Sì e No

  • Preferisce risposte specifiche ai pulsanti Sì e No. Anche se non c'è nulla di sbagliato con l'uso di Sì e No, è possibile comprendere più rapidamente risposte specifiche, con conseguente efficiente processo decisionale. Tuttavia, le conferme in genere hanno pulsanti Sì e No per fare in modo che gli utenti dare la conferma alcuni pensieri prima di rispondere.

  • Usare i pulsanti Sì e No solo per rispondere a domande sì o no. L'istruzione principale deve essere espressa naturalmente come una domanda sì o no. Non usare mai OK e Annulla per sì o nessuna domanda.

    Risposta errata:

    Screenshot that shows a message with an 'OK' for a yes-no question.

    Risposta corretta:

    screen shot of message with yes for same question

    Meglio:

    screen shot of message with run for same question

    In questi esempi, Sì e No sono buone risposte a sì e no domande, ma risposte specifiche sono ancora migliori.

  • Prendere in considerazione la formulazione dell'istruzione principale come sì o nessuna domanda se i pulsanti di commit con formulazione specifica risultano lunghi o imbarazzanti. In alternativa, è possibile usare i collegamenti ai comandi per risposte più lunghe (cinque parole o più) all'istruzione principale.

    Risposta errata:

    screen shot of message with wordy button labels

    Risposta corretta:

    screen shot of message with yes/no button labels

    La formulazione specifica nell'esempio errato è troppo lunga, quindi l'esempio corretto usa Sì e No.

  • Non usare i pulsanti Sì e No se il significato della risposta No non è chiaro. In tal caso, usare invece risposte specifiche.

Pulsanti OK

  • Nelle finestre di dialogo modali fare clic su OK significa applicare i valori, eseguire l'attività e chiudere la finestra.

  • Non usare i pulsanti OK per rispondere alle domande.

  • Non assegnare i tasti di scelta a OK, perché INVIO è il tasto di scelta per il pulsante predefinito. In questo modo le altre chiavi di accesso sono più facili da assegnare.

  • Etichettare correttamente i pulsanti OK. Il pulsante OK deve essere etichettato OK, non Ok o Ok.

  • Non usare pulsanti OK per errori o avvisi. I problemi non sono mai ok. Usare invece Chiudi.

    Risposta errata:

    screen shot of message with ok button

    In questo esempio, close deve essere usato invece di OK.

  • Non usare i pulsanti OK nelle finestre di dialogo senza modalità. Invece, le finestre di dialogo senza modalità devono usare pulsanti di commit specifici dell'attività (ad esempio, Trova). Tuttavia, alcune finestre di dialogo senza modalità richiedono solo un pulsante Chiudi.

Pulsanti Annulla

  • Facendo clic su Annulla si intende abbandonare tutte le modifiche, annullare l'attività, chiudere la finestra e restituire l'ambiente allo stato precedente, senza effetti collaterali. Per le finestre di dialogo di scelta nidificate, fare clic su Annulla nella finestra di dialogo di scelta del proprietario significa che le eventuali modifiche apportate dalle finestre di dialogo scelte di proprietà vengono abbandonate.

  • Specificare un pulsante Annulla per consentire agli utenti di abbandonare in modo esplicito le modifiche. Le finestre di dialogo richiedono un punto di uscita chiaro. Non dipendere dagli utenti che trovano il pulsante Chiudi sulla barra del titolo.

    • Eccezione: non fornire un pulsante Annulla per le finestre di dialogo senza impostazioni. I pulsanti OK e Chiudi hanno lo stesso effetto di Annulla in questo caso.

    Risposta errata:

    screen shot of message with ok button only

    In questo esempio, la presenza di un solo pulsante Chiudi sulla barra del titolo lo rende come se gli utenti non abbiano una scelta.

  • Non usare i pulsanti Annulla per rispondere alle domande.

    Risposta errata:

    screen shot of message with ok for yes-no question

    In questo esempio, OK e Cancel non vengono usati correttamente per rispondere a una domanda Sì o No.

  • Non assegnare chiavi di accesso a Cancel, perché Esc è la chiave di accesso. In questo modo le altre chiavi di accesso sono più facili da assegnare.

  • Non usare i pulsanti Annulla nelle finestre di dialogo senza modalità. Usare invece Chiudi.

  • Non disabilitare il pulsante Annulla. Gli utenti devono sempre essere in grado di annullare le finestre di dialogo.

    • Eccezione: è possibile disabilitare il pulsante Annulla in una finestra di dialogo di stato se è presente un periodo durante il quale l'operazione non può essere annullata. Tuttavia, una soluzione migliore consiste nel progettare tali operazioni in modo che siano sempre annullabili.

Pulsanti di chiusura

  • Utilizzare i pulsanti Chiudi per le finestre di dialogo senza modalità, nonché le finestre di dialogo modali che non possono essere annullate.
  • Facendo clic su Chiudi si intende chiudere la finestra di dialogo, lasciando eventuali effetti collaterali esistenti. Non usare Done, perché non è una costruzione imperativa. Per le finestre di dialogo di scelta nidificate, fare clic su Chiudi nella finestra di dialogo di scelta del proprietario significa che tutte le modifiche apportate dalle finestre di dialogo scelte di proprietà vengono mantenute.
  • Inserire un pulsante Chiudi esplicito nel corpo della finestra di dialogo. Le finestre di dialogo richiedono un punto di uscita chiaro. Non dipendere dagli utenti che trovano il pulsante Chiudi sulla barra del titolo.
  • Assicurarsi che il pulsante Chiudi sulla barra del titolo abbia lo stesso effetto di Annulla o Chiudi.
  • Non assegnare chiavi di accesso a Chiudi, perché ESC è la chiave di accesso. In questo modo le altre chiavi di accesso sono più facili da assegnare.

Applica pulsanti

  • Non usare i pulsanti Applica nelle finestre di dialogo che non sono finestre delle proprietà o pannelli di controllo. Il pulsante Applica indica l'applicazione delle modifiche in sospeso, ma lasciare aperta la finestra. In questo modo gli utenti possono valutare le modifiche prima di chiudere la finestra. Tuttavia, solo la finestra delle proprietà e i pannelli di controllo hanno questa necessità.

    Risposta errata:

    screen shot of dialog box with apply button

    In questo esempio, una finestra di dialogo di scelta non ha bisogno di un pulsante Applica.

Pulsanti di commit per le finestre di dialogo indirette

Nota: le finestre di dialogo indirette vengono visualizzate fuori contesto, come risultato indiretto di un'attività o il risultato di un problema con un processo di sistema o in background. Per i dialoghi indiretti, il pulsante Annulla è ambiguo perché potrebbe significare annullare la finestra di dialogo o annullare l'intera attività.

  • Se gli utenti devono annullare sia la finestra di dialogo che l'attività, assegnare i pulsanti di commit per eseguire entrambe le operazioni. Etichettare il pulsante che annulla la finestra di dialogo con una risposta negativa all'istruzione principale. Etichettare il pulsante che annulla l'intera attività con Annulla. L'uso di Annulla consente di utilizzare la finestra di dialogo in molti contesti.

    Risposta corretta:

    screen shot of dialog box with save/don't save

    In questo esempio, questa finestra di dialogo viene visualizzata da Windows Paint come risultato di un comando Nuovo o Esci quando l'elemento grafico non è stato salvato. Non salvare chiude la finestra di dialogo senza salvare, mentre Annulla annulla il comando Nuovo o Esci.

    Risposta errata:

    screen shot of dialog box with yes/no buttons

    In questo esempio non è possibile annullare l'attività (chiusura della barra di scelta rapida di Office) che ha portato alla visualizzazione di questa finestra di dialogo. Questa finestra di dialogo richiede un pulsante Annulla.

  • Se gli utenti devono solo annullare la finestra di dialogo ma non l'attività, usare un pulsante con una risposta specifica e negativa all'istruzione principale e non avere un pulsante Annulla.

    screen shot of dialog box with run/don't run

    In questo esempio, questa finestra di dialogo viene visualizzata indirettamente come risultato della navigazione in una pagina Web che installa un controllo ActiveX. L'uso di Annulla è ambiguo in questo caso, quindi non eseguire viene usato.

Per altre informazioni ed esempi, vedere Pulsanti di comando.

  • Presentare un set di comandi lunghi usando i collegamenti ai comandi, anziché i pulsanti di comando o una combinazione di pulsanti di opzione e un pulsante OK. In questo modo gli utenti possono rispondere con un solo clic. Tuttavia, questo approccio funziona solo per una singola domanda.
  • Presentare prima i collegamenti ai comandi usati più di frequente. L'ordine risultante deve seguire approssimativamente la probabilità di utilizzo, ma anche un flusso logico.
    • Eccezione: i collegamenti ai comandi che comportano l'esecuzione di tutte le operazioni devono essere posizionati per primi.
  • Se un collegamento al comando richiede una spiegazione dettagliata, fornire una spiegazione supplementare. Le spiegazioni supplementari descrivono perché gli utenti potrebbero voler scegliere il comando o cosa accade se si sceglie il comando.
  • Non usare spiegazioni supplementari che sono riformulazioni wordy del collegamento al comando. Usare una spiegazione supplementare solo quando non è possibile creare un collegamento di comando autoesplicativo. Fornire una spiegazione supplementare per un collegamento di comando non significa che è necessario specificarli per tutti i comandi.

screen shot of dialog box with text noting options

In questo esempio, la spiegazione supplementare descrive le implicazioni di una delle opzioni.

  • Usare frasi che iniziano con un verbo, senza terminare la punteggiatura.
  • Se un comando è fortemente consigliato, prendere in considerazione l'aggiunta di "(scelta consigliata)" all'etichetta. Assicurarsi di aggiungere all'etichetta di collegamento, non la spiegazione supplementare.
  • Se un comando è destinato solo agli utenti avanzati, prendere in considerazione l'aggiunta di "(advanced)" all'etichetta. Assicurarsi di aggiungere all'etichetta di collegamento, non la spiegazione supplementare.
  • Fornire sempre un pulsante Annulla esplicito. Non usare un collegamento al comando per questo scopo.

Risposta errata:

screen shot of dialog box with don't exit link

In questo esempio la finestra di dialogo usa un collegamento di comando anziché un pulsante Annulla.

Per altre informazioni ed esempi, vedere Collegamenti ai comandi.

Non visualizzare più questo <elemento>

  • È consigliabile usare un'opzione Non visualizzare di nuovo questo <elemento> per consentire agli utenti di eliminare una finestra di dialogo ricorrente, solo se non esiste un'alternativa migliore. È preferibile visualizzare sempre la finestra di dialogo se gli utenti lo hanno davvero bisogno o semplicemente eliminarlo se non lo fanno.
  • Usare questa formulazione specifica per sostituire <l'elemento> con l'elemento specifico. Ad esempio, non visualizzare di nuovo questo promemoria. Quando si fa riferimento a una finestra di dialogo in generale, usare Non visualizzare di nuovo questo messaggio.
  • Indicare chiaramente quando l'input dell'utente verrà usato per i valori predefiniti futuri aggiungendo la frase seguente sotto l'opzione : Le selezioni verranno usate per impostazione predefinita in futuro.
  • Non selezionare l'opzione per impostazione predefinita. Se la finestra di dialogo deve essere visualizzata una sola volta, farlo senza chiedere. Non usare questa opzione come scusa per infastidire gli utenti, assicurarsi che il comportamento predefinito non sia fastidioso.

Risposta errata:

screen shot of message asking unnecessary question

In questo esempio, il messaggio deve essere visualizzato una sola volta. Non c'è bisogno di chiedere.

  • Rendere persistente l'impostazione per utente.
  • Se gli utenti selezionano l'opzione e fanno clic su Annulla, questa opzione ha effetto. Questa impostazione è una meta-opzione, quindi non segue il comportamento Di annullamento standard di non lasciare alcun effetto collaterale. Si noti che se gli utenti non vogliono visualizzare la finestra di dialogo in futuro, molto probabilmente vogliono annullarlo.
  • Se gli utenti potrebbero dover ripristinare queste finestre di dialogo, specificare un comando Ripristina messaggi nella finestra di dialogo Opzioni del programma.

Richiedi in seguito

  • Specificare questa opzione per ignorare una finestra di dialogo solo quando:
    • La finestra di dialogo è indiretta, quindi è probabile che gli utenti si concentrino su un'altra attività.
    • Gli utenti devono rispondere ma non immediatamente, in modo che possano continuare a lavorare.
    • La domanda richiede un pensiero o un impegno sufficiente in modo che gli utenti possano prendere decisioni migliori se dato più tempo.
    • La finestra di dialogo o l'opzione verranno presentate automaticamente in un secondo momento (in modo che gli utenti vengano effettivamente richiesti in seguito ).
  • Risposta errata:
  • screen shot of message with ask me later option
  • In questo esempio la domanda è abbastanza semplice da complicare solo l'aggiunta di un'opzione Chiedimi in seguito.
  • In caso contrario, aspettatevi che gli utenti rispondano ora, ma consentono di chiudere normalmente la finestra di dialogo con Annulla o Chiudi. Se usata correttamente, questa opzione deve essere rara.

Più/meno

  • Usa più o meno pulsanti di divulgazione progressiva per mostrare o nascondere opzioni avanzate o usate raramente, comandi o dettagli che in genere non servono agli utenti di destinazione. In questo modo viene semplificata la finestra di dialogo per l'utilizzo tipico. Non nascondere opzioni, comandi o informazioni di uso comune perché gli utenti potrebbero non trovarli.

screen shot of dialog box with more options button

In questo esempio, le opzioni usate raramente sono nascoste per impostazione predefinita.

  • Non usare più controlli o meno, a meno che non siano presenti dettagli da visualizzare. Non solo riformulare le stesse informazioni in un formato diverso.
  • Non usare più controlli o meno per visualizzare la Guida. Usare invece collegamenti alla Guida o note a piè di pagina.
  • Con le finestre di dialogo attività, evitare di combinare più o meno controlli con Non visualizzare di nuovo questo <elemento> . Questa combinazione ha un aspetto imbarazzante.
  • Per le linee guida per l'etichettatura, vedere Divulgazione progressiva.

Note a piè di pagina

  • Usare note a piè di pagina per informazioni non essenziali per lo scopo di una finestra di dialogo, ma che gli utenti possono trovare utili per prendere decisioni. La maggior parte degli utenti dovrebbe essere in grado di ignorare le note a piè di pagina e prendere decisioni informate nella risposta alla finestra di dialogo.

screen shot of dialog box with clarifying footnote

In questo esempio, le informazioni sulla nota a piè di pagina sono supplementari, non essenziali.

Disabilitazione o rimozione di controlli e assegnare messaggi di errore

  • Quando un controllo non si applica nel contesto corrente, prendere in considerazione le opzioni seguenti:
    • Rimuovere il controllo quando non esiste alcun modo per consentire agli utenti di abilitarlo o gli utenti non si aspettano che venga applicato e il relativo stato non cambia frequentemente. In questo modo si semplifica la finestra di dialogo e gli utenti non lo perderanno. Avere un controllo apparire e scomparire spesso è fastidioso.
    • Disabilitare il controllo quando gli utenti si aspettano di applicare o modificare frequentemente lo stato e gli utenti possono dedurre facilmente il motivo per cui il controllo è disabilitato. Un esempio di semplice deduzione è la disabilitazione di un pulsante di commit quando è presente una singola casella di testo vuota che richiede qualsiasi input. È possibile usare le aree per visualizzare problemi di input utente non critici con le caselle di testo e gli elenchi a discesa modificabili. Tuttavia, se il problema non può essere spiegato con un fumetto o coinvolge più controlli, la deduzione non sarebbe più facile.
    • In caso contrario, lasciare abilitato il controllo, ma fornire un messaggio di errore quando viene usato in modo non corretto. La disabilitazione in questo caso renderebbe difficile per gli utenti comprendere il motivo per cui il controllo è disabilitato. Gli utenti sarebbero costretti a determinare il problema attraverso la sperimentazione e la logica detrattiva. È meglio solo fornire un messaggio di errore utile per spiegare il problema in modo esplicito.
  • Suggerimento: se non si è certi che sia necessario disabilitare un controllo o fornire un messaggio di errore, iniziare componendo il messaggio di errore che potrebbe essere specificato. Se il messaggio di errore contiene informazioni utili che potrebbero non dedurre rapidamente gli utenti di destinazione, lasciare abilitato il controllo e dare l'errore. In caso contrario, disabilitare il controllo .
  • Se si disabilita un controllo, disabilitare anche tutti i controlli associati, ad esempio l'etichetta, le spiegazioni supplementari o i pulsanti di comando. Tuttavia, non disabilitare le caselle di gruppo, l'etichetta di gruppo o la spiegazione di gruppo, se presenti.

screen shot of dialog box with dimmed controls

In questo esempio, anche le etichette delle caselle di testo disabilitate sono disabilitate, ma l'etichetta del gruppo e la spiegazione del gruppo non sono.

Input richiesto

  • Per indicare che gli utenti devono fornire informazioni in un controllo, prendere in considerazione le opzioni seguenti:

    • Non indicare nulla, ma gestire l'input richiesto mancante con i messaggi di errore. Questo approccio riduce il disordine e funziona bene se la maggior parte dell'input è facoltativa o gli utenti probabilmente non ignorano i controlli, mantenendo così basso il numero di messaggi di errore.

    • Indicare l'input richiesto usando un asterisco all'inizio dell'etichetta. Spiegare l'asterisco usando:

      • Nota a piè di pagina nella parte inferiore dell'area del contenuto che indica * Input obbligatorio.
      • Descrizione comando nell'asterisco che indica Input obbligatorio.

      Questo approccio funziona correttamente se non sono presenti molti controlli necessari, ma in modo non corretto se la maggior parte dei controlli è necessaria.

      screen shot of text box labels with asterisks

      In questo esempio, gli asterischi vengono usati per indicare l'input richiesto.

    • Se tutti i controlli richiedono l'input, specificare "Tutti gli input necessari" in una posizione appropriata nella parte superiore dell'area del contenuto. Questo approccio riduce il disordine per questo caso specifico.

    • Indicare gli input facoltativi con "(facoltativo)" dopo l'etichetta. Questo approccio funziona correttamente se la maggior parte dell'input è necessaria, ma in caso contrario non è corretto.

  • Per coerenza, provare a usare lo stesso metodo per indicare l'input richiesto in tutto il programma. In particolare, indicare l'input obbligatorio o facoltativo in base alle esigenze, ma evitare di usare entrambi all'interno dello stesso programma.

Gestione degli errori

  • Evitare errori usando controlli vincolati all'input utente valido. È anche possibile ridurre il numero di errori fornendo valori predefiniti ragionevoli.

  • Convalidare l'input dell'utente il prima possibile e visualizzare gli errori il più vicino possibile al punto di input.

  • Usare la gestione degli errori senza modalità (errori sul posto o palloncini) per i problemi di input dell'utente.

    • Usare i balloons per problemi di input utente non critici e a singolo punto rilevati mentre si trova in una casella di testo o immediatamente dopo che una casella di testo perde lo stato attivo. I palloncini non richiedono lo spazio disponibile sullo schermo o il layout dinamico necessario per visualizzare i messaggi sul posto. Consente di visualizzare un solo fumetto alla volta. Poiché il problema non è critico, non è necessaria alcuna icona di errore. I palloncini vengono rimossi quando si fa clic, quando il problema viene risolto o dopo un timeout.

      screen shot of 'incorrect character' message

      In questo esempio, un fumetto indica un problema di input mentre è ancora nel controllo .

  • Usare gli errori sul posto per il rilevamento ritardato degli errori, in genere gli errori rilevati facendo clic su un pulsante di commit. Non usare errori sul posto per le impostazioni di cui viene immediatamente eseguito il commit. Possono verificarsi più errori sul posto alla volta. Usa testo normale e un'icona di errore di 16x16 pixel, posizionandoli direttamente accanto al problema quando possibile. Gli errori sul posto non vengono visualizzati a meno che l'utente non esegua il commit e non vengano trovati altri errori.

    screen shot of dialog box with two error messages

    In questo esempio viene usato un errore sul posto per un errore rilevato facendo clic sul pulsante commit.

  • Usare la gestione degli errori modali (finestre di dialogo attività o finestre di messaggio) per tutti gli altri problemi, inclusi gli errori che coinvolgono più controlli o sono errori non contestuali o non di input rilevati facendo clic su un pulsante di commit.

  • Quando viene rilevato e segnalato un problema di input, impostare lo stato attivo sull'input sul primo controllo con i dati non corretti. Se necessario, scorrere il controllo nella visualizzazione.

Per altre informazioni ed esempi, vedere Messaggi di errore e palloncini.

Icona ?

  • Quando si fornisce assistenza per gli utenti, prendere in considerazione le opzioni seguenti (elencate nell'ordine di preferenza):

    • Assegnare ai controlli interattivi etichette autoesplicative. È più probabile che gli utenti leggano le etichette nei controlli interattivi rispetto a qualsiasi altro testo.
    • Fornire spiegazioni nel contesto usando etichette di testo statiche.
    • Specificare un collegamento alla Guida a un argomento della Guida pertinente.
  • Individuare i collegamenti della Guida nella parte inferiore dell'area del contenuto della finestra di dialogo. Se la finestra di dialogo contiene una nota a piè di pagina e il collegamento Della Guida è correlato, posizionare il collegamento ?all'interno della nota a piè di pagina.

    screen shot of dialog box with help link

    In questo esempio, il collegamento ? si applica all'intera finestra di dialogo.

    • Eccezione: se in una finestra di dialogo sono presenti diversi gruppi di impostazioni con argomenti della Guida separati (ad esempio all'interno di caselle di gruppo), individuare i collegamenti della Guida nella parte inferiore dei gruppi.
  • Non usare i collegamenti generici o vaghi degli argomenti della Guida o i pulsanti della Guida generici. Gli utenti spesso ignorano la Guida generica.

Per altre informazioni ed esempi, vedere La Guida.

Valori predefiniti

  • Includere un pulsante di commit predefinito in ogni finestra di dialogo.
  • Per le finestre di dialogo delle domande:
    • Selezionare il più sicuro (per evitare la perdita di dati o l'accesso al sistema), la risposta più sicura è l'impostazione predefinita. Se la sicurezza e la sicurezza non sono fattori, selezionare la risposta più probabile o conveniente.
      • Eccezione: non rendere una risposta distruttiva l'impostazione predefinita, a meno che non esista un modo semplice e ovvio per annullare il comando.
  • Per i dialoghi di scelta:
    • Per i valori predefiniti iniziali, selezionare il più sicuro (per evitare la perdita di dati o l'accesso al sistema) e i valori più sicuri per ogni controllo. Se la sicurezza e la sicurezza non sono fattori, selezionare le opzioni più probabili o convenienti.
    • Per i valori predefiniti successivi, deselezionare nuovamente le opzioni selezionate in precedenza se è probabile che tali valori vengano ripetuti e in questo modo sia sicuro e sicuro. In caso contrario, selezionare i valori predefiniti iniziali.

screen shot of print dialog box

In questo esempio è più probabile che gli utenti scelgano le stesse impostazioni di stampa dell'ultima volta. Tuttavia, è probabile che il numero di copie desiderate cambierà, quindi questa impostazione non viene rielezione.

  • Supportare la risoluzione minima dello schermo di Windows Vista di 800 x 600 pixel. I layout possono essere ottimizzati per le finestre ridimensionabili usando una risoluzione dello schermo di 1024 x 768 pixel.
  • Usare finestre ridimensionabili ogni volta che è pratico per evitare barre di scorrimento e dati troncati. Windows con contenuto dinamico ed elenchi trae vantaggio dalle finestre ridimensionabili.
  • Le finestre a dimensione fissa devono essere completamente visibili e ridimensionate per adattarsi all'interno dell'area di lavoro.
  • Le finestre ridimensionabili possono essere ottimizzate per risoluzioni più elevate, ma ridimensionate in base alle esigenze in fase di visualizzazione per la risoluzione effettiva dello schermo.
  • Scegliere le dimensioni predefinite della finestra appropriate per il relativo contenuto. Non avere paura di usare dimensioni della finestra iniziali maggiori se è possibile usare lo spazio in modo efficace.

Testo

Generale

  • Rimuovere il testo ridondante. Cercare testo ridondante nei titoli, istruzioni principali, istruzioni supplementari, aree di contenuto, collegamenti ai comandi e pulsanti di commit. In genere, lasciare il testo completo nelle istruzioni e nei controlli interattivi e rimuovere qualsiasi ridondanza dalle altre posizioni.
  • Usare formulazioni positive. La formulazione positiva è più semplice per gli utenti di comprendere.

Risposta corretta:

Abilitare la condivisione di file e stampanti?

Risposta errata:

Disabilitare la condivisione di file e stampanti?

Tuttavia, la formulazione deve corrispondere al comando associato, anche se il comando è espresso negativamente; ad esempio, usare disable per confermare un comando Disable.

  • Se necessario, usare la parola "window" per fare riferimento alla finestra di dialogo stessa.
  • Usare la seconda persona ("you/your") per indicare agli utenti cosa fare nell'area principale di istruzioni e contenuto. Spesso la seconda persona è implicita.

Esempi:

Scegliere le immagini da stampare

Scegliere un account

  • Usare la prima persona ("I/me/my") per consentire agli utenti di indicare al programma cosa fare nei controlli nell'area del contenuto che rispondono all'istruzione principale.

Esempio: stampare le foto sulla fotocamera.

Titoli delle finestre di dialogo

  • Usare il titolo per identificare il comando, la funzionalità o il programma da cui proviene una finestra di dialogo.
    • Se la finestra di dialogo viene avviata dall'utente, identificarla usando il comando o il nome della funzionalità. Eccezioni:
      • Se una finestra di dialogo viene visualizzata da molti comandi diversi, è consigliabile usare invece il nome del programma.
      • Se tale titolo sarebbe ridondante con l'istruzione principale, usare invece il nome del programma.
    • Se è un programma o un sistema avviato (e quindi fuori contesto), identificarlo usando il programma o il nome della funzionalità per assegnare contesto.
    • Non usare il titolo per spiegare cosa fare nel dialogo che è lo scopo dell'istruzione principale.
  • Usare il nome esatto del comando per i nomi basati su comandi, ma non includere i puntini di sospensione se ne esiste uno. Se necessario, è possibile includere il titolo del menu del comando per comporre un titolo valido. Esempio: per un oggetto... comando in un menu Inserisci, usare il titolo Inserisci oggetto.
  • Se sulla barra delle applicazioni viene visualizzata una finestra di dialogo senza modalità, ottimizzare il titolo per la visualizzazione sulla barra delle applicazioni posizionando concisamente le informazioni distintive. Esempi: "66% completamento" e "3 promemoria".
  • Non includere le parole "dialog" o "progress" nel titolo. Ciò è implicito e l'uscita rende più semplice per gli utenti eseguire l'analisi.
  • Usa maiuscole e minuscole in stile titolo, senza punteggiatura finale.

Istruzioni principali

  • Usare l'istruzione principale per spiegare in modo conciso le operazioni da eseguire nel dialogo. L'istruzione deve essere un'istruzione specifica, una direzione imperativa o una domanda. Le istruzioni valide comunicano l'obiettivo dell'utente con il dialogo invece di concentrarsi esclusivamente sui meccanismi di manipolazione.
  • Omettere l'istruzione principale quando l'unica cosa che si può dire è ovvio. In questi casi, il contenuto della finestra di dialogo è autoesplicativo. Ad esempio, le finestre di dialogo File Open e File Save common non richiedono un'istruzione principale perché il contesto e la progettazione rendono ovvio il loro scopo.
  • Omettere le etichette di controllo che rimettono l'istruzione principale. In questo caso, l'istruzione principale accetta la chiave di scelta.

Accettabile:

screen shot of text box with redundant label

In questo esempio, l'etichetta della casella di testo è solo una riformularità dell'istruzione principale.

Meglio:

screen shot of same text box with one label

In questo esempio l'etichetta ridondante viene rimossa, quindi l'istruzione principale accetta la chiave di accesso.

  • Usare concisa solo una singola frase completa. Pare l'istruzione principale fino alle informazioni essenziali. Se è necessario spiegare qualcosa di più, usare istruzioni supplementari.
  • Usare verbi specifici ogni volta che è possibile. Verbi specifici (esempi: connessione, salvataggio, installazione) sono più significativi per gli utenti rispetto a quelli generici (esempi: configurare, gestire, impostare).
  • Usare la maiuscola in stile frase.
  • Non includere i periodi finali se l'istruzione è un'istruzione . Se l'istruzione è una domanda, includere un punto interrogativo finale.
  • Per i dialoghi di stato, usare una frase gerund che spiega brevemente l'operazione in corso, terminando con i puntini di sospensione. Esempio: Stampare le immagini...
  • Suggerimento: è possibile valutare un'istruzione principale immaginando ciò che si potrebbe dire a un amico. Se rispondere con l'istruzione principale sarebbe innaturale, inutile o imbarazzante, rielaborare l'istruzione.

Istruzioni supplementari

  • Se necessario, usare un'istruzione supplementare facoltativa per presentare informazioni aggiuntive utili per comprendere o usare la pagina. È possibile fornire informazioni più dettagliate e definire la terminologia.
  • Se l'aspetto della finestra di dialogo è un programma o un sistema avviato (e pertanto fuori contesto), usare l'istruzione supplementare per spiegare il motivo per cui è apparso il dialogo. Per tali dialoghi, il contesto in genere non è ovvio.
  • Non ripetere l'istruzione principale con parole leggermente diverse. In alternativa, omettere l'istruzione supplementare se non c'è più da aggiungere.
  • Usare frasi complete, maiuscole e minuscole in stile frase e punteggiatura finale.
  • Scegliere un testo di collegamento conciso che comunica chiaramente e differenzia le funzioni del collegamento al comando. Deve essere autoesplicativo e corrispondere all'istruzione principale. Gli utenti non devono capire cosa significa veramente il collegamento o come differisce da altri collegamenti.
  • Avviare sempre i collegamenti ai comandi con un verbo.
  • Usare l'iniziale maiuscola solo per la prima parola.
  • Non usare la punteggiatura finale.
  • Se necessario, fornire una spiegazione aggiuntiva usando frasi complete e punteggiatura finale. Tuttavia, aggiungere tali spiegazioni solo quando necessario non aggiungere spiegazioni a tutti i collegamenti ai comandi solo perché un collegamento di comando ne richiede uno.

Per altre informazioni ed esempi, vedere Linee guida per il collegamento ai comandi.

Pulsanti commit

  • Usare etichette specifiche dei pulsanti di commit che hanno senso autonomamente e sono una risposta all'istruzione principale. Idealmente, gli utenti non devono leggere altro per comprendere l'etichetta. Gli utenti sono molto più propensi a leggere le etichette dei pulsanti di comando rispetto al testo statico.
  • Avviare le etichette dei pulsanti di commit con un verbo. Le eccezioni sono OK, Sì e No.
  • Usare l'iniziale maiuscola solo per la prima parola.
  • Non usare la punteggiatura finale.
  • Assegnare una chiave di accesso univoca.
    • Eccezione: non assegnare i tasti di scelta ai pulsanti OK e Annulla perché INVIO e ESC sono i tasti di scelta. In questo modo le altre chiavi di accesso sono più facili da assegnare.

Documentazione

Quando si fa riferimento alle finestre di dialogo:

  • Nella programmazione e in altri documenti tecnici fare riferimento alle finestre di dialogo come finestre di dialogo. Altrove, fare riferimento alle finestre di dialogo in base al titolo. Se la barra del titolo è nascosta, fare riferimento alla finestra di dialogo usando l'istruzione principale.
  • Se è necessario fare riferimento a una finestra di dialogo in generale, usare la finestra nella documentazione dell'utente. È possibile fare riferimento a una semplice finestra di dialogo di domande o una conferma come messaggio.
  • Usare il titolo esatto o il testo dell'istruzione principale, inclusa la relativa maiuscola.
  • Quando possibile, formattare il titolo usando il testo grassetto. In caso contrario, inserire il titolo tra virgolette solo se necessario per evitare confusione.

Esempio: in Sicurezza di Windows fare clic su Altre opzioni.