Allan Day
aday@gnome.org
Calum Benson
Adam Elman
Seth Nickell
Colin Robertson
Anders Jonsson
anders.jonsson@norsjovallen.se 2015, 2018
Sebastian Rasmussen
sebras@gmail.com 2017, 2018

# Förloppsindikator

Förloppsindikatorer indikerar att en uppgift håller på att utföras, samt hur stor del av uppgiften som har utförts.

# När ska de användas

Det är vanligtvis nödvändigt att indikera ett händelseförlopp när en åtgärd tar mer än cirka tre sekunder. Detta försäkrar att användare förstår att de måste vänta och att ett fel inte har inträffat.

När man vill indikera ett förlopp är det huvudsakliga valet mellan en förloppsindikator eller en väntesnurror. Förloppsindikatorer indikerar hur stor del av en uppgift som har slutförts. De är därför användbara för uppgifter som tar lång tid. Som en tumregel används en förloppsindikator endast för uppgifter som tar mer än 30 sekunder. För uppgifter som tar kortare tid är väntesnurror ofta ett bättre val.

# Typer

Det finns tre typer av förloppsindikatorer:

Tid som återstår: dessa indikerar hur mycket tid som återstår av en åtgärd.

Typisk tid: dessa indikerar hur mycket tid som återstår, baserat på en uppskattning av den förväntade varaktigheten.

Obestämbar: dessa indikerar endast att en åtgärd pågår, inte hur lång tid den kommer att ta.

Noggrannhet är att föredra för förloppsindikatorer. När det är möjligt, använd en förloppsindikator som visar återstående tid, följt av typisk tid. Försök att undvika att använda obestämbara förloppsindikatorer.

# Förloppstext

Varje förloppsindikator kan inkludera en textbeskrivning. Denna text bör ge en uppfattning om hur mycket av uppgiften som har slutförts. När du bestämmer dig för en förloppstext:

Betänk alltid vad som är mest relevant och intressant för användaren.

Det är ofta bättre att tillhandahålla specifik information snarare än en enhetslös procentsats. Använd till exempel 13 av 19 bilder roterade eller 12,1 av 30 MB hämtade snarare än 13% färdigt.

För uppgifter som tar lång tid kan det vara att föredra att visa en uppskattning av tiden som återstår i förloppstexten. Om annan relevant information inte är tillgänglig kan endast detta visas. Alternativt, kan de visas vid sidan om texten om förloppet; var dock uppmärksam på att inte överväldiga användaren med allt för mycket information när detta görs och använd de typografiska konventionerna för att särskilja den mest användbara informationen.

Om tiden som återstår är en uppskattning använd ordet ungefär, till exempel Ungefär 3 minuter kvar.

# Uppgiftsetapper

Några uppgifter kan bestå av en serie av etapper som utförs efter varandra, där var och en har olika alternativ för tidsuppskattning. Det kan exempelvis vara möjligt att bedöma kvarvarande tid för en del av en uppgift, men inte för en annan del. I dessa situationer:

Kommunicera endast de olika etapperna av en uppgift då de är relevanta för användaren. I allmänhet kommer detta inte att behövas, och det är inte nödvändigt eller önskvärt att kommunicera enskilda etapper i en uppgift.

Om en uppgift innehåller etapper som beräknar kvarvarande tid respektive typisk tid, försök att skapa en sammansatt förloppsindikator som anger typisk tid.

Om en uppgift innehåller en förloppsetapp av obestämbar längd så kan förloppsindikatorn visa okänt förlopp för en del av uppgiften. Du bör dock undvika att visa obestämda förloppsindikatorer under lång tid, och bör försöka hålla antalet lägesändringar för förloppsindikatorer till ett absolut minimum. Undvik obestämda förlopp närhelst det är möjligt.

# Deluppgifter

Om en uppgift består av flera deluppgifter (så som att hämta flera filer samtidigt) så är det i allmänhet rekommenderat att visa en enda förloppsindikator som indikerar det sammansatta förloppet för hela uppgiften. Det finns dock några situationer där detta kanske inte är fallet:

Om det är genuint användbart för användaren att veta förloppet för varje individuell deluppgift. (Som ett alternativ kan slutförande av varje deluppgift indikeras med en förloppstext.)

Om det kan vara nödvändigt att pausa eller stoppa en deluppgift (se de allmänna riktlinjerna för detta nedan).

Om deluppgifter redan indikeras i ditt programs användargränssnitt. I detta fall kan det vara mindre störande att visa förloppet för varje objekt inbäddat.

Då förloppsindikatorer visas för deluppgifter:

Bör varje deluppgift följa riktlinjerna för användning av förloppsindikatorer (se när ska de användas ovan).

I allmänhet är det inte nödvändigt att visa en förloppsindikator för totalt förlopp genom uppsättningen av uppgifter.

# Förloppsfönster

Tidigare var förloppsfönster ett populärt sätt att presentera förloppsindikatorer. Dessa sekundära fönster visades under tiden en uppgift behandlades och innehöll en eller flera förloppsindikatorer. Generellt rekommenderas inte förloppsfönster eftersom konsekvenserna av att stänga fönstret kan vara oklara och att de kan skymma användbara komponenter och innehåll.

Där det är möjligt bör förloppsindikatorer visas inbäddade och bör ha en tät, visuell relation med innehållsobjekten eller komponenterna som representerar den pågående uppgiften.

# Allmänna riktlinjer

Om åtgärden som pågår är destruktiv eller resursintensiv, överväg att placera en paus- och/eller avbrytknapp nära förloppsindikatorn.

Säkerställ att förloppsindikatorns återstående tid och typisk tid mäter en åtgärds totala tid eller totala arbete, inte enbart den för ett enstaka steg.

Uppdatera förloppsindikatorns återstående tid när förändringar inträffar som kan förorsaka att åtgärden avslutas snabbare eller långsammare.

När en förloppsindikator med typisk tid används kan, om ditt program överskattar mängden färdigt arbete kan längden på indikatorn indikera nästan färdigt tills åtgärden är klar. Om ditt program underskattar hur mycket arbete som är färdigt, fyll den återstående delen av indikatorn när åtgärden är klar.

# API-referens

GtkProgressBar