файловому менеджері Nautilus 
Анімований індикатор виконання.
Індикатор виконання або Індикатор прогресу (англ. Progress bar) — це елемент графічного інтерфейсу, який показує, наскільки просунулася обробка задачі певної комп'ютерної операції, такої як завантаження чи процес встановлення. Це комп'ютерний еквівалент гістограми. У сучасній термінології Microsoft цей елемент називається індикатором стану.

Визначений індикатор виконання
Зазвичай індикатор виконання складається зі смуги, яка відображає у відсотках хід виконання процесу, збільшуючись від 0 до 100 %. Це дає приблизне уявлення про час, що залишився до завершення. Індикатори виконання також часто зустрічаються під час завантаження або при встановленні пакету програмного забезпечення.

Невизначений індикатор виконання
 Невизначений індикатор виконання, який фактично не вказує наскільки просунувся процес обробки задачі
Невизначений індикатор виконання виглядає як цикл, де смуга безупинно рухається в одному напрямку і в кінці відображення зануляється. Тут не використовуються відсотки, оскільки невідомо, скільки часу знадобиться для завершення процесу. Проте невизначений індикатор виконання дає зрозуміти, що комп'ютер не завис і далі продовжує працювати.

Альтернативою цьому є такі елементи, як тробер (Throbber)30x30пкс або відображення курсора в режимі очікування (наприклад, пісковий годинник).

Текстовий індикатор виконання
У ранні часи, коли графічні можливості були обмежені, індикатори виконання формувалися в текстовому відображенні зі зростаючого ряду мовних знаків, наприклад, XXXXXX. . ..

Текстовим попередником Throbber вважається циклічна послідовність символів |/-\, які були виведені в одній і тій же позиції курсора. Ці текстові анімації були вже в ранніх версіях UNIX та DR DOS у 1980-х роках.

Ресурси
Відображення індикатора виконання також споживає певні ресурси й, таким чином, може збільшити загальну тривалість процесу, але на практиці це навряд чи є актуальним в цей час. Також це спрощений спосіб показати користувачеві, що програма все ще працює.

Тривіальний патент
Патент на розробку індикатора виконання був поданий Томасом Послінскі і Кімом Анноном Ріалом через компанію Sony. Цей патент вважається тривіальним, тобто таким, який не має вагомої винахідницької цінності.

Когнітивний ефект
У 1985 році Бред Майерс представив статтю про індикатор виконання на конференції, присвяченій взаємодії комп'ютера та людини. Його дослідження полягало у тому, що люди запускали пошук у базі даних з індикатором виконання та без. Люди, які чекали завершення процесу, спостерігаючи за індикатором виконання, повідомляли про кращі враження від очікування закінчення процесу.

Як правило, індикатори виконання використовують лінійну функцію, так що просування індикатора виконання прямо пропорційно залежить від обсягу виконаної роботи. Однак відмінності у жорстких дисках, процесорах, пам'яті та інших факторах ускладнюють цю оцінку. Як наслідок, індикатори виконання часто виконують процес завантаження з прискореннями, уповільненнями чи паузами. У поєднанні з нелінійним сприйняттям часу, притаманним людям, це спричиняє різне сприйняття тривалості процесу, який показує індикатор. Потрібно брати до уваги, що індикатори виконання можуть бути спроектовані так, щоб вони здавалися швидшими.

Дослідження Майерса продемонструвало, що графічний дизайн індикаторів виконання також впливає на сприйняття людиною тривалості.

Приклад коду

C#
У цьому прикладі показано мовою програмування C# реалізацію індикатора виконання. У поле списку на екрані вводяться трикутні числа, а індикатор виконання відображує цей процес.
using System.Windows.Forms;

public class MainForm : System.Windows.Forms.Form
{
	private System.Windows.Forms.ListBox triangularNumbersListBox;
	
	private System.Windows.Forms.ProgressBar newProgressBar;
	
	// Конструктор MainForms.
	public MainForm()
	{
		InitializeControls();
	}
	
	// Запускає додаток та створює головну форму MainForm шляхом виклику конструктора.
    public static void Main()
    {
        Application.Run(new MainForm());
    }
	
	// Ініціалізує поле зі списком та індикатором виконання.
	private void InitializeControls()
	{
		// Створює індикатор виконання списку шляхом виклику стандартних конструкторів.
		
		triangularNumbersListBox = new ListBox();
		newProgressBar = new ProgressBar();
		
		SuspendLayout();
		
		triangularNumbersListBox.Location = new System.Drawing.Point(50, 50);
		triangularNumbersListBox.Size = new System.Drawing.Size(200, 100);
		triangularNumbersListBox.MultiColumn = false;
		triangularNumbersListBox.SelectionMode = SelectionMode.One;
		Controls.Add(triangularNumbersListBox);
		
		int minimum = -10;
		int maximum = 10;
		
		newProgressBar.Location = new System.Drawing.Point(50, 200);
		newProgressBar.Minimum = 1;
		newProgressBar.Maximum = maximum - minimum + 2;
		newProgressBar.Value = 1; // Встановлює початкове значення індикатора виконання.
		newProgressBar.Step = 1; // Задає розмір кроку індикатора виконання.
		Controls.Add(newProgressBar);
		
		// Цей цикл for вводить у поле списку трикутні числа -10* -9/2, -9* -8/2, ..., 9*10/2, 10*11/2.
		triangularNumbersListBox.BeginUpdate();
		for (int i = minimum; i 

Примітки

