Allan Day
aday@gnome.org
Calum Benson
Adam Elman
Seth Nickell
Colin Robertson
Christian Kirbach
christian.kirbach@gmail.com 2014
Mario Blättermann
mario.blaettermann@gmail.com 2016

# Fortschrittsbalken

Fortschrittsbalken stellen dar, dass eine Aufgabe gerade ausgeführt wird und wie weit die Ausführung bereits fortgeschritten ist.

# Anwendungsfälle

Es ist normalerweise notwendig, den Fortschritt anzuzeigen, wenn der Vorgang länger als etwa drei Sekunden dauert. Dadurch können Benutzer besser verstehen, dass sie warten müssen und dass kein Fehler aufgetreten ist.

Beim Anzeigen des Fortschritts besteht die primäre Auswahl aus einem Fortschrittsbalken und einem Fortschritts-Spinner. Fortschrittsbalken zeigen an, wie weit die Aufgabe bereits abgeschlossen ist. Sie sind daher für Aufgaben sinnvoll, die lange Zeit erfordern. Als Faustregel gilt, dass Sie Fortschrittsbalken nur dann verwenden sollten, wenn die Erledigung der Aufgabe länger als 30 Sekunden dauert. Für kürzere Aufgaben sind Fortschritts-Spinner oft die bessere Wahl.

# Typen

Es gibt drei Typen von Fortschrittsbalken:

Verbleibende Zeit: Es wird die Zeit angezeigt, die bis zum Abschluss eines Vorgangs verbleibt.

Typische Zeit: Zeigt an, wie viel Zeit verbleibt, basierend auf einer Schätzung der erwarteten Dauer.

Unbestimmt: Zeigt lediglich einen laufenden Vorgang an, ohne Informationen über die Dauer.

Genauigkeit ist für Fortschrittsbalken vorzuziehen. Wo immer es möglich ist, sollte ein Fortschrittsbalken die verbleibende Zeit anzeigen, gefolgt von der typischen Zeit. Versuchen Sie, Fortschrittsbalken mit unbestimmten Zeitangaben zu vermeiden.

# Fortschrittstext

Jeder Fortschrittsbalken kann eine Textbeschreibung darstellen. Dieser Text sollte vermitteln, wie lange es noch dauert, bis die Abarbeitung einer Aufgabe abgeschlossen ist. Folgendes sollten Sie bei der Auswahl des Textes bedenken:

Überlegen Sie, was für den Benutzer am relevantesten und interessantesten ist.

Oft ist es besser, den Benutzern spezifische Informationen anstelle Prozentsätzen zu bieten. Beispielsweise ist die Anzeige 13 of 19 images rotated oder 12.1 of 30 MB downloaded hilfreicher als 13% complete.

For long-running tasks, it can be desirable to show an estimate of the time remaining in the progress bar text. If other relevant information isn't available, this can be shown on its own. Alternatively, it can appear alongside text about task progress; however, be careful not to overwhelm the user with too much information when doing this, and use typographic conventions to differentiate the most useful information.

Wenn die verbleibende Zeit nur ein Schätzwert ist, verwenden Sie das Wort about. Beispiel: About 3 minutes left.

# Zustände von Aufgaben

Some tasks can be made up of a sequential series of stages, each of which have different options for time estimation. It might be possible to estimate the time remaining for part of a task, but not another part, for example. In these situations:

Only communicate the different stages in a task when they are relevant to a user. Generally speaking, this will not be required, and it is not necessary or desirable to communicate separate stages in a task.

If a task includes time-remaining and typical-time stages, try to create a single composite typical-time progress bar.

If a task includes an indeterminate progress stage, the progress bar can show indeterminate progress for part of the task. However, you should avoid showing indeterminate progress bars for long periods of time, and should attempt to keep the number of progress bar mode changes to an absolute minimum. Avoid indeterminate progress wherever possible.

# Teilaufgaben

If a task is comprised of multiple sub-tasks (such as downloading several files simultaneously), it is generally advisable to show a single progress bar which indicates composite progress for the overall task. However, there are some situations where this might not be the case:

If it is genuinely useful for the user to know progress within each individual sub-task. (As an alternative, completion of each sub-task can be indicated with progress text.)

If it might be necessary to pause or stop a sub-task (see the general guidelines on this, below).

If sub-tasks are already indicated in your application's user interface. In this case, it can be less disruptive to show a progress for each item inline.

Folgendes sollten Sie bei der Anzeige von Fortschrittsbalken für Teilaufgaben beachten:

Each sub-task should conform to the usage guidelines for progress bars (see when to use, above).

Im Allgemeinen ist es nicht notwendig, einen Fortschrittsbalken für den Gesamtfortschritt der auszuführenden Aufgaben anzuzeigen.

# Forschrittsfenster

In der Vergangenheit waren Fortschrittsfenster eine beliebte Methode zum Darstellen von Fortschrittsbalken. Die sekundären Fenster wurden für die Dauer der auszuführenden Aufgabe angezeigt und enthielten eine oder mehrere Balkenanzeigen. Generell werden solche Fortschrittsfenster nicht mehr empfohlen, da die Auswirkung beim Schließen des Fensters unklar ist und diese Fenster außerdem nützliche und wichtige Bedienelemente und Inhalte verdecken können.

Wo immer möglich sollten Fortschrittsbalken eingebettet angezeigt werden und einen engen visuellen Bezug zu den Inhaltsobjekten oder Bedienelementen haben, welche die in Ausführung befindliche Aufgabe darstellen.

# Allgemeine Richtlinien

Falls der in Bearbeitung befindliche Vorgang potenziell destruktiv oder ressourcenintensiv ist, sollten Sie einen Pause- oder Abbrechen-Knopf am Fortschrittsbalken platzieren.

Stellen Sie sicher, dass Fortschrittsbalken, die die typische oder verbleibende Zeit anzeigen, die Gesamtzeit oder den Gesamtaufwand messen und sich nicht nur auf einen einzelnen Schritt beziehen.

Aktualisieren Sie Fortschrittsbalken, die die verbleibende Zeit anzeigen, wenn sich Änderungen ergeben, die einen Vorgang deutlich beschleunigen oder verlangsamen.

When using a typical-time progress bar, if your application overestimates the completed amount of work, the length of the bar can indicate almost complete until the operation is complete. If your application underestimates how much work is complete, fill the remaining portion of the bar when the operation is complete.

# API-Referenz

GtkProgressBar