Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Создание перемещаемых окон

Читайте также:
  1. Gt;■ < ' ol" '. 5 ■* создание ряда
  2. II. Создание глоссария по теме занятия
  3. IV Создание ковровой дорожки
  4. А. Создание и заполнение базы данных
  5. Быстрое создание
  6. В окне БД выберите вкладку Создание и нажмите кнопку Конструктор запросов
  7. В. Создание регулярной армии. Военная реформа Петра I.

MAXScript позволяет пользователю создавать окна, которые будут появляться на экране поверх стандартного интерфейса 3ds max, и размещать в этих окнах свитки с компонентами пользовательского интерфейса. Когда это окно появится на экране, пользователь может перемещать его, сворачивать и разворачивать, а так же изменять его вертикальный размер. Для поддержки таких возможностей в MAXScript имеется специальный класс RolloutFloater и две функции. Первая из них

newRolloutFloater Строка Число_1 Число_2 Число_3 Число_4

Первый параметр задает заголовок окна, второй и третий – соответственно ширину и высоту окна. Ширина командной панели 3ds max, на тот случай, если окно должно воспроизводить утилиту, 218 пикселей. Четвертый и пятый параметры необязательны и задают вертикальное и горизонтальное смещение окна относительно левого верхнего угла экрана. Если они не заданы, то окно выводится в центр экрана. Результатом функции будет значение типа RolloutFloater, которое используется для размещения на созданном окне свитков с компонентами интерфейса.

Вторая функция для работы с окнами предназначена для их закрытия

closeRolloutFloater Окно

В качестве параметра должно задаваться значение, полученное с помощью функции newRollotFloater. Соответствующее окно при этом закрывается. Для всех свитков, размещенных в этом окне, вызывается функция-обработчик события close.

Поместить свиток в окно можно с помощью функции

addRollout Свиток Окно rolledUp: логическое выражение

В качестве окна задается значение, полученное как результат функции newRolloutFloater. Параметр rolledUp необязателен и задает начальное состояние свитка, true – свернут, false – закрыт.

Для удаления свитка из окна используется функция

removeRollout Свиток Окно

Указанный свиток удаляется из указанного окна.

Каждое окно является членом класса и, следовательно, имеет свойства. Свойство

Окно. size

содержит точку в двумерном пространстве. Ее первая координата равна ширине окна, а вторая – высоте. Координаты окна на экране можно получить с помощью свойства

Окно. pos

которое так же возвращает точку в двумерном пространстве – координаты левого верхнего угла на экране. Оба свойства могут быть использованы как для чтения, так и для записи, причем их изменение немедленно отображается на экране. При изменении размеров окна или расположения его на экране, вне зависимости от того сделано это пользователем или программно, функция-обработчик событий resized или moved вызывается для первого из размещенных в окне свитков. В качестве примера можно отследить события, происходящие со свитками, на таком примере.

rollout Roll_1 "Rollout №1"

(bitmap b1 bitmap:(bitmap 50 50)

on Roll_1 close do print "Roll_1 Closed"

on Roll_1 resized size do print "Roll_1 Resized"

on Roll_1 moved pos do print "Roll_1 Moved"

)

 

rollout Roll_2 "Rollout №2"

(button but "MyButton"

on Roll_2 close do print "Roll_2 Closed"

on Roll_2 resized size do print "Roll_2 Resized"

on Roll_2 moved pos do print "Roll_2 Moved"

)

 

gwrf = newRolloutFloater "Testing Floater Window" 300 220

addRollout Roll_1 gwrf rolledUp:true

addRollout Roll_2 gwrf

В частности при изменении размера и координат окна, в окне интерпретатора будут выводиться сообщения только для свитка Roll_1.

 


Дата добавления: 2015-10-31; просмотров: 100 | Нарушение авторских прав


Читайте в этой же книге: Функции, работающие с наборами | Прочие функции | Выделенные вершины | Выделенные грани | Выделенные ребра | Битовые массивы | Массивы модификаторов | Панель скрипт-утилиты | Составные части тела утилиты | Составные части тела свитка |
<== предыдущая страница | следующая страница ==>
Свойства, методы и события свитков и утилит| Общие параметры компонентов пользовательского интерфейса

mybiblioteka.su - 2015-2024 год. (0.006 сек.)