AnyLogic
Развернуть
Размер шрифта

Индикатор прогресса

Элемент управления, визуально отображающий степень выполнения (прогресс) какого-то процесса (задачи). Анимация производится с помощью прямоугольника, вначале отображающегося пустым, и постепенно (по мере того, как процесс близится к завершению) закрашивающимся пропорционально тому, какой процент задачи выполнен к данному моменту времени. При необходимости в поле элемента управления можно также отображать численное значение процента выполненной задачи.

Чтобы показать, что выполняется задача неопределенной длительности, вы можете использовать нефиксированный режим строки прогресса. В этом режиме строка прогресса будет просто отображать анимацию того, что процесс выполняется. Как только вы сможете оценить длительность задачи и текущий прогресс ее выполнения, нужно будет обновить значение строки прогресса и переключить ее в Фиксированный режим.

Чтобы добавить индикатор прогресса

  1. Перетащите элемент Индикатор прогресса из палитры Элементы управления в то место графического редактора, где вы хотите его нарисовать.

Свойства

Основные

Имя — Имя индикатора прогресса. Имя используется для идентификации элемента и доступа к нему из кода.

Исключить — Если опция выбрана, то индикатор прогресса будет исключена из модели.

Отображается на верхнем агенте — Если опция выбрана, то индикатор прогресса будет виден на презентации типа агента, в который будет вложен данный агент.

Ориентация — Задает ориентацию индикатора прогресса (Горизонтальная или Вертикальная).

Отображать строку прогресса — Если опция выбрана, то в поле индикатора прогресса отображается текстовая строка. Обычно она показывает текущее значение прогресса выполнения задачи. Содержимое строки задается в поле справа от флажка. Здесь вы можете ввести выражение, возвращающее значение типа String — текст, который и будет отображаться в поле элемента управления. Вы можете использовать в выражении две локальные переменные: value (хранит значение текущего прогресса) и percent (хранит текущее значение процента выполненной задачи).
Пример строки: percent + " процент(ов) выполнен(о)"

Минимальное значение — Минимальное значение индикатора прогресса.

Максимальное значение — Максимальное значение индикатора прогресса.

Значение прогресса — Выражение, возвращающее значение типа double — значение прогресса выполнения задачи.
Простейший пример: если вы хотите отслеживать с помощью индикатора прогресса ход течения времени, напишите здесь time().

Фиксированный — Логическое выражение, определяющее, находится ли индикатор прогресса в фиксированном или нефиксированном режиме. В нефиксированном режиме элемент управления будет показывать с помощью анимации, что выполняется задача неопределенной длительности.

Действие

Код, который будет выполняться при заполнении индикатора.

Местоположение и размер

Уровень — Уровень, на котором расположен этот элемент.

X — X-координата верхнего левого угла индикатора прогресса.

Y — Y-координата верхнего левого угла индикатора прогресса.

Ширина — Ширина индикатора прогресса (в пикселях).

Высота — Высота индикатора прогресса (в пикселях).

Специфические

Видимость — Элемент будет виден, если заданное здесь выражение будет истинно (true), в противном случае он отображаться не будет.

Количество — Количество экземпляров данного элемента управления. Если вы оставите это поле пустым, то будет создан только один такой элемент управления.

Отображать имя — Если опция выбрана, то имя индикатора прогресса будет отображаться в графическом редакторе.

Значок — Если опция выбрана, то индикатор прогресса будет считаться частью значка типа агентов.

Функции

Значение индикатора прогресса
Функция Описание
double getValue() Возвращает текущее значение индикатора прогресса.
int getPercent() Возвращает процент прогресса (целочисленное значение от 0 до 100).
void setValue(double val) Задает значение индикатора прогресса.

val — новое значение
Диапазон значений
Функция Описание
double getMin() Возвращает минимальное значение индикатора прогресса.
double getMax() Возвращает максимальное значение индикатора прогресса.
void setRange(double min, double max) Задает минимальное и максимальное значения индикатора прогресса.

min — новое минимальное значение
max — новое максимальное значение
Фиксированный режим
Функция Описание
void setDeterminate(boolean val) Определяет, в каком из режимов — фиксированном или нефиксированном — находится индикатор. Нефиксированный индикатор прогресса показывает с помощью анимации, что совершается операция неопределенной длительности. По умолчанию индикатор находится в фиксированном режиме.

val — если true, индикатор находится в фиксированном режиме, если false — то в нефиксированном
Строка прогресса
Функция Описание
void setProgressString(String val) Задает значение строки индикатора прогресса.

val — новое значение строки индикатора прогресса; если null, то строка скрыта.
Местоположение
Функция Описание
double getX() Возвращает координату X элемента управления (если точнее, то координату X его верхнего левого угла).
double getY() Возвращает координату Y элемента управления (если точнее, то координату Y его верхнего левого угла).
void setX(double x) Задает новую координату X.

x — новое значение координаты X
void setY(double y) Задает новую координату Y.

y — новое значение координаты Y
void setPos(double x, double y) Задает новое местоположение элемента управления.

x — новое значение координаты X
y — новое значение координаты Y
Размер
Функция Описание
double getWidth() Возвращает ширину элемента в пикселях.
double getHeight() Возвращает высоту элемента в пикселях.
void setWidth(double width) Устанавливает ширину элемента равной параметру width.
void setHeight(double height) Устанавливает высоту элемента равной параметру height
Видимость
Функция Описание
boolean isVisible() Возвращает видимость элемента управления.
Если возвращает true, то элемент управления виден; если false — то нет.
void setVisible(boolean v) Задает видимость элемента управления.

v — видимость: если true, то элемент управления будет виден, если false — то нет.
Группа
Функция Описание
ShapeGroup getGroup() Возвращает группу, содержащую этот элемент управления.
Уровень
Функция Описание
Level getLevel() Возвращает уровень, на котором находится этот элемент управления.
Как мы можем улучшить эту статью?