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

Бегунок

Элемент управления, позволяющий пользователю графически выбирать число из заданного диапазона значений путем перетаскивания рукоятки.

Бегунки обычно используются для изменения значений численных переменных и параметров (типа int или double) во время выполнения модели.

Для работы с текстовыми переменными и параметрами типа String используйте текстовые поля. Управлять же значениями логических переменных типа boolean лучше всего с помощью флажков.

Демо-модель: Slider Linked To Parameter Открыть страницу модели в AnyLogic Cloud. Там можно запустить модель или скачать ее по ссылке Исходные файлы модели.

Чтобы добавить бегунок

  1. Перетащите элемент Бегунок  из палитры Элементы управления в то место графического редактора, куда вы хотите добавить бегунок.
  2. Перейдите в панель Свойства.
  3. Используйте группу элементов управления Ориентация, чтобы задать Горизонтальную или Вертикальную ориентацию фигуры бегунка.
  4. В поле Значение по умолчанию вы можете ввести значение по умолчанию для данного бегунка (или же выражение, которое будет вычислять это значение).
  5. Если вы хотите связать бегунок с численной переменной или параметром (то есть, присваивать этой переменной текущее значение этого бегунка), установите флажок Связать с и введите имя соответствующей переменной или параметра в расположенном справа поле.
  6. Если же вы хотите, чтобы при изменении пользователем состояния бегунка производилось какое-то другое, более сложное действие, введите код, который вы хотели бы выполнять в таком случае, в секции Действие (текущее значение бегунка доступно здесь как value (локальная переменная типа double)).
  7. Если вы хотите, чтобы рядом с бегунком отображались текстовые метки, отображающие текущее значение бегунка, а также минимальное и максимальное значения, которые он может принимать, то щелкните по кнопке Добавить метки.... Вы увидите, что рядом с бегунком появятся текстовые метки (min, value, max) — обычные фигуры презентации текст, которые можно редактировать — изменять их местоположение, размер и цвет шрифта и т.д, при необходимости — даже удалить. Во время выполнения модели они будут отображать минимальное, текущее и максимально возможное значения бегунка.

Свойства

Основные

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

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

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

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

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

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

Минимальное значение — Минимальное значение, которое может принимать бегунок (нижняя граница диапазона значений бегунка).

Максимальное значение — Максимальное значение, которое может принимать бегунок (верхняя граница диапазона значений бегунка).

Шаг — Здесь вы можете задать значение, на которое бегунок будет сдвигаться по диапазону от минимального до максимального значения. Тип значения может быть как int, так и double.

Значение по умолчанию — [Видно, если не установлен флажок Связать с] Выражение, возвращающее значение бегунка по умолчанию (типа double). Если бегунок связан с какой-либо переменной или параметром, то в качестве значения по умолчанию будет использовано начальное значение этой переменной или параметра (или ближайшее к нему из интервала допустимых значений бегунка, если это значение не попадает в этот интервал).

Доступность — Логическое выражение, определяющее, доступен элемент управления или нет.

Добавить метки... — Щелкнув по этой кнопке, вы поместите рядом с бегунком три текстовые метки, которые будут отображать минимальное, текущее и максимально возможное значения бегунка (min, value, max). Метки являются обычными фигурами презентации текст, так что вы можете легко редактировать их — изменять их местоположение, размер и цвет шрифта и т.д,, а при необходимости — даже удалить.

Действие

Код, выполняемый, когда пользователь передвигает бегунок. Текущее значение бегунка доступно здесь как value (локальная переменная типа double).

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

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

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

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

Ширина — Ширина бегунка (в пикселях).

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

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

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

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

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

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

Задание значения бегунка

Вы можете задать значение бегунка следующими способами:

  1. Вручную, передвигая рукоятку бегунка
  2. Передав значение связанного с бегунком параметра или переменной в качестве аргумента функции бегунка setValue(value, callAction).

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

Функции

Получение текущего значения
Функция Описание
double getValue() Возвращает текущее значение бегунка.
int getIntValue() Возвращает текущее целочисленное значение бегунка.
Эта функция может быть использована только для бегунков, связанных с параметрами или переменными типа int.
Задание нового значения
Функция Описание
void setValue(double value) Задает значение бегунка. При этом действие, заданное пользователем, не выполняется.
Если при вызове этой функции в ходе выполнения модели задается значение вне текущего диапазона значений бегунка, то бегунок примет ближайшее возможное значение из доступного ему диапазона и шага, а в консоли появится соответствующее предупреждение.

val — новое значение
void setValue(double value, boolean callAction) Задает значение бегунка. При этом если значение аргумента функции callAction равно true, то выполнится заданное пользователем действие.
Если при вызове этой функции в ходе выполнения модели задается значение вне текущего диапазона значений бегунка, то бегунок примет ближайшее возможное значение из доступного ему диапазона и шага, а в консоли появится соответствующее предупреждение. Если код в поле действия бегунка связан с его значением, он будет выполняться с учетом скорректированного значения.

value — новое значение
callAction — если true, то будет выполнено заданное пользователем действие
void setValueToDefault() Устанавливает заданный по умолчанию текст в качестве текущего значения текстового поля.
При этом заданное пользователем действие не выполняется.
Диапазон значений
Функция Описание
double getMin() Возвращает минимальное значение бегунка.
double getMax() Возвращает максимальное значение бегунка.
void setRange(double min, double max) Задает минимальное и максимальные значения бегунка.
При этом заданное пользователем действие не выполняется.
Если бегунок настроен на работу с целочисленными значениями (привязан к переменной или параметру типа int), заданные границы [min, max] диапазона могут быть автоматически исправлены на целочисленные. Если бегунок уже находится в этом диапазоне, эта функция ничего не делает.
Если текущее значение бегунка находится вне нового заданного диапазона, оно будет приведено к ближайшему возможному значению из этого нового диапазона. Значение связанного с бегунком параметра при этом останется прежним.

min — новое минимальное значение
max — новое максимальное значение
void setRange(double min, double max, boolean callAction) Задает минимальное и максимальные значения бегунка.
При этом если текущее значение бегунка изменится, то в том же потоке выполнится заданное пользователем действие (если значение аргумента функции callAction равно true).
Если бегунок настроен на работу с целочисленными значениями (привязан к переменной или параметру типа int), заданные границы [min, max] диапазона могут быть автоматически исправлены на целочисленные.
Если бегунок уже находится в этом диапазоне, эта функция ничего не делает.
Если текущее значение бегунка находится вне нового заданного диапазона, оно будет приведено к ближайшему возможному значению из этого нового диапазона. Значение связанного с бегунком параметра при этом останется прежним.

min — новое минимальное значение
max — новое максимальное значение
callAction — если true, то будет выполнено заданное пользователем действие
Шаг бегунка
Функция Описание
double getStep() Возвращает значение шага для бегунка.
void setStep(double step) Задает значение шага для бегунка.
Если текущее значение бегунка не совпадает с новым заданным шагом бегунка, оно будет приведено к ближайшему возможному значению с учетом нового заданного шага. Значение связанного с бегунком параметра при этом останется прежним.

step — новое значение шага.
Управление доступом
Функция Описание
boolean isEnabled() Проверяет, доступен ли элемент управления в текущий момент времени. Возвращает true, если элемент доступен (и вы можете менять его состояние), либо же false, если элемент недоступен.
void setEnabled(boolean yes) Делает элемент управления активным или недоступным (в зависимости от значения аргумента функции).

yes — если true, то элемент управления будет активен; если false — то недоступен.
Программное выполнение заданного действия
Функция Описание
void action() Выполняет действие, заданное пользователем для этого элемента управления (в его свойстве Действие).
Местоположение
Функция Описание
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
Видимость
Функция Описание
boolean isVisible() Возвращает видимость элемента управления.
Если возвращает true, то элемент управления виден; если false - то нет.
void setVisible(boolean v) Задает видимость элемента управления.

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