
- •С чего начать
- •Переменные и присвоение им значений
- •Области видимости
- •Настойчивые переменные
- •Изменяемый тип переменных
- •Присвоение значения по ссылке
- •Выделение памяти и уборка мусора
- •Имена переменных
- •Литералы
- •Числовые литералы
- •Строковые литералы
- •Литералы времени
- •Литералы имен объектов
- •Литералы точек в двумерном и трехмерном пространстве
- •Литералы массивов
- •Выражения
- •Простые выражения
- •Математические выражения
- •Порядок выполнения операций в математических выражениях
- •Полиморфизм
- •Выражения сравнения
- •Логические операции
- •Сокращенное выполнение логических выражений
- •Позиционированные и именованные параметры
- •Приоритет вызова функций
- •Написание вызова функции в несколько строк
- •Другой способ вызова функций
- •Контекстные выражения
- •Комментарии
- •Обращение из одного скрипта к другим
- •Управление порядком выполнения операторов
- •Пропуск выполнения цикла
- •Собственная обработка ошибок
- •Оформление функций
- •Переменная, содержащая функцию
- •Параметры функций
- •Принудительное завершение функции
- •Определение структур
- •Создание функций, локальных внутри структуры
- •Базовые классы maxScript Класс Value
- •Операторы
- •Литералы
- •Операторы
- •Свойства
- •Операторы
- •Точка в трехмерном пространстве
- •Литералы
- •Конструкторы
- •Свойства
- •Операторы
- •Литерал
- •Конструкторы
- •Свойства
- •Произвольный поворот
- •Литералы
- •Конструкторы
- •Операторы
- •Свойства
- •Углы Эйлера
- •Операторы
- •Свойства
- •Прямоугольник
- •Литералы
- •Конструкторы
- •Свойства
- •Операторы
- •Функция
- •Массив_чисел
- •Вспомогательные методы Функция
- •Функция
- •Можно открыть зашифрованный файл, используя функцию
- •Свойства
- •Свойства
- •Особенности работы с ключами анимации
- •Массив параметров
- •Конструкторы
- •Свойства
- •Операторы
- •Множества
- •Шаблонные группы
- •Свойства
- •Операторы
- •Функции для работы с группами
- •Наборы объектов
- •Конструкторы
- •Свойства
- •Операторы
- •Функции, работающие с наборами
- •Дополнительные сведения
- •Конструкторы
- •Свойства
- •Операторы
- •Прочие функции
- •Операторы
- •Конструкторы
- •Свойства
- •Операторы
- •Конструкторы
- •Свойства
- •Операторы
- •Конструкторы
- •Свойства
- •Операторы
- •Литералы
- •Свойства
- •Операторы
- •Конструкторы
- •Свойства
- •Операторы
- •Конструкторы
- •Свойства
- •Операторы
- •Прочие функции
- •Скрипт-утилиты
- •Панель скрипт-утилиты
- •Составные части тела свитка
- •Создание перемещаемых окон
- •Видимость локальных переменных, структур, функций и компонент интерфейса из кода свитка
- •Доступ к локальным переменным и прочим элементам утилит и свитков из внешнего кода
- •Компоненты пользовательского интерфейса
- •Название_компонента Имя_переменной Символьная_строка
- •Общие свойства компонентов пользовательского интерфейса
- •Общие параметры компонентов пользовательского интерфейса
- •Типы компонентов пользовательского интерфейса Для примера рассмотрим утилиту, использующую все возможные компоненты пользовательского интерфейса
- •Битовая карта
- •Параметры
- •Свойства
- •События
- •Параметры
- •Параметры
- •Свойства
- •События
- •Параметры
- •Свойства
- •События
- •Выпадающий список
- •Параметры
- •Свойства
- •События
- •Свойства
- •События
- •Кнопка выбора текстурной карты
- •Параметры
- •Свойства
- •События
- •Кнопка выбора материала
- •Параметры
- •Свойства
- •События
- •Список с возможностью множественного выбора
- •Параметры
- •Свойства
- •События
- •Кнопка выбора объекта
- •Параметры
- •Свойства
- •События
- •Задатчик
- •Параметры
- •Свойства
- •События
- •Параметры
- •Свойства
- •События
- •Кнопки с картинками
- •Скрипт контекстного меню
- •Тело контекстного меню
- •Пункт меню
- •Разделитель
- •Подменю
- •Макро скрипты
- •Создание файлов с иконками
- •Средства работы с мышью
- •Остановить работу средства можно вызовом функции
- •Правила оформления средств работы с мышью
- •События
- •Скрипт плугины
- •Правила построения скрипт-плугина
- •Внесение изменений в плугин
- •Урок 1. Твердые тела
- •Создание набора твердых тел
- •Добавление тел к набору
Свойства
Диапазон изменения и текущее значение числа, определяемого задатчиком, можно получить или изменить с помощью свойства
Задатчик.range.
Данное свойство является полным аналогом одноименного параметра. Текущее значение доступно для чтения и записи через свойство
Задатчик.value
События
При изменении значения в поле редактирования с помощью кнопки генерируется событие
on Задатчик changed Параметр do
Это же событие вызывается и тогда, когда пользователь, изменив значение с помощью клавиатуры, нажимает клавишу Enter или Tab, или мышью переводит фокус ввода в другой компонент интерфейса. В параметре при этом содержится новое значение.
Событие
on Задатчик entered do
происходит при нажатии в поле редактирования клавиши Enter, или потере компонентом фокуса ввода любым способом (нажатием клавиши Tab или мышью)
Нажатие любой из кнопок задатчика приводит к генерации события
on Задатчик buttonDown do
а отпускание
on Задатчик buttonUp do
Эти два события чаще всего используются для той же цели, что и аналогичные события ползунка.
Таймер
Этот компонент не виден на панели свитка и предназначен для организации действий в реальном времени, генерируя специальное событие через определенный интервал времени. Для его определения необходимо написать следующее выражение
timer Имя_переменной interval: Число active: Логическое_выражение
Параметры
В переменную, представленную первым параметром, заносится ссылка, применяемая для дальнейших манипуляций с таймером. Задавая параметр interval, можно определять количество миллисекунд, (то есть тысячных долей секунды) через которое будет генерироваться событие таймера. По умолчанию этот параметр равен 1000, следовательно, таймер тикает раз в секунду. Параметр active определяет, будет ли таймер вызывать события после своего создания или нет. Значение true соответствует активному состоянию таймера, false – пассивному. Если параметр не указан, таймер находится в активном состоянии.
Свойства
Свойства таймера полностью повторяют его параметры и доступны как для чтения, так и для записи. Свойство
Таймер.interval
содержит интервал между тиками таймера в миллисекундах, а
Таймер.active
статус активности таймера. Это свойство используется для программного управления таймером.
События
Через заданные интервалы времени таймером генерируются события
on Таймер tick do
Параметров событие не имеет.
Кнопки с картинками
Следующие компоненты – кнопка, фиксируемая кнопка, кнопка для выбора карты и материала могут быть оформлены как кнопки с картинкой. Для этого используется параметр images. В этом параметре должен быть задан массив из семи элементов. Первые два элемента могут быть либо именем файла, в котором содержится битовая карта, либо самими битовыми картами. Первый из этих двух элементов содержит саму картинку, отображаемую на кнопке, второй – маску для этой картинки. Например, это могут быть такие изображения
- картинки
- маски для картинок
Третий компонент этого массива должен содержать число картинок, представленных в указанных битовых картах. Для приведенного примера это число должно равняться шести. Наконец последние четыре элемента массива – это числа, задающие номера картинок для отпущенной кнопки, нажатой кнопки, отпущенной недоступной кнопки и нажатой недоступной кнопки. Номера начинаются с единицы и отсчитываются от левого края битовой карты. Закладка Create в приведенном примере будет первой картинкой, Modify – второй и т.д. до шестой Utilities. Если параметр images задан, то текст на кнопке игнорируется, хотя и может быть определен параметром или задан с помощью свойств text или caption.