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

Переключатель

Элемент управления Переключатель представляет собой группу кнопок. В любой момент времени может быть выбрана только одна кнопка из группы. Тем самым, переключатель может использоваться для интерактивного выбора пользователем одного из нескольких предложенных вариантов.

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

Вы можете также связать этот элемент управления с целочисленной переменной или параметром типа int. При этом выбор той или иной кнопки переключателя будет присваивать связанной с переключателем переменной связанное с выбранной кнопкой целочисленное значение. Это значение равно индексу этой кнопки: у заданной в списке Переключатель первой кнопки индекс будет равен 0, у второй 1 и т.д.

Демо-модель: Radio Buttons Enabling Other Controls Открыть страницу модели в AnyLogic Cloud. Там можно запустить модель или скачать ее по ссылке Исходные файлы модели.

Чтобы добавить переключатель

  1. Перетащите элемент Переключатель  из палитры Элементы управления в то место графического редактора, куда вы хотите добавить переключатель.
  2. Перейдите в панель Свойства.
  3. Если вы хотите связать переключатель с целочисленной переменной или параметром типа int (то есть, присваивать этой переменной индекс выбранной в текущий момент кнопки переключателя), установите флажок Связать с и введите имя соответствующей переменной или параметра в расположенном справа поле.
  4. Если же вы хотите, чтобы при выборе пользователем другой кнопки переключателя производилось какое-то другое, более сложное действие, введите код, который вы хотели бы выполнять в таком случае, в секции Действие (индекс выбранной в данной момент кнопки доступен здесь как value (локальная переменная типа int)).

Свойства

Основные

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

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

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

Ориентация — Определяет, как расположены кнопки переключателя: друг под другом (Горизонтальная ориентация) или в ряд (Вертикальная ориентация).

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

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

Значение по умолчанию — [Видно, если не установлен флажок Связать с] Выражение, возвращающее номер кнопки, которая будет выбрана по умолчанию. Нумерация кнопок начинается с нуля, то есть, чтобы по умолчанию выбиралась первая кнопка, нужно написать здесь 0 и т.д.

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

Действие

Код, который будет выполняться при выборе кнопки переключателя. Номер выбранной в данной момент кнопки доступен здесь как value (локальная переменная типа int). Нумерация кнопок начинается с нуля, то есть, номер первой кнопки 0 и т.д.

Внешний вид

Цвет текста — Задает цвет текста меток переключателя. Щелкните мышью внутри элемента управления и выберите нужный цвет из списка наиболее часто используемых цветов или же выберите любой другой цвет с помощью диалога Цвета.

Шрифт — Задает тип шрифта для текста меток переключателя. В расположенном справа поле вы можете выбрать размер шрифта.

Курсив — Если опция выбрана, то текст меток будет выделен курсивом.

Полужирный — Если опция выбрана, то текст меток будет выделен полужирным шрифтом.

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

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

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

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

Ширина — Ширина переключателя (в пикселях).

Высота — Высота переключателя (в пикселях).

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

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

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

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

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

Функции

Выбранное значение
Функция Описание
int getValue() Возвращает выбранную в данный момент кнопку переключателя. Если ни одна кнопка не выбрана, возвращает -1.
void setValue(int index) Выбирает кнопку с заданным индексом, выбор остальных кнопок сбрасывается. При этом заданное пользователем действие не выполняется.

index — индекс кнопки
void setValue(int index, boolean callAction) Выбирает кнопку с заданным индексом, выбор остальных кнопок сбрасывается. При этом если значение аргумента функции callAction равно true, то выполнится заданное пользователем действие.

index — индекс кнопки
callAction — если true, то будет выполнено заданное пользователем действие
void setValueToDefault() Устанавливает заданную по умолчанию кнопку в качестве текущего значения переключателя.
При этом заданное пользователем действие не выполняется.
Управление доступом
Функция Описание
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() Возвращает уровень, на котором находится этот элемент управления.
Как мы можем улучшить эту статью?