Читайте также:
|
|
Единственное, что отличает данный список от обычного, это возможность выбора сразу нескольких строк с помощью мыши и клавиш Ctrl и Shift. Поэтому вполне естественно, что его определение почти полностью повторяет определение списка
multilistbox Имя_переменной Текстовая_строка items: Массив
selection: Массив height: Число
Параметры
Первые два параметра, как обычно, задают имя переменной для ссылки на компонент и его заголовок. Третий параметр, items, должен быть текстовым массивом, который задает строки, расположенные в списке. Тип параметра selection отличается от аналогичного параметра списка. Он задается массивом целых чисел или битовым массивом, определяющим выбранные компоненты списка. И, наконец, параметр height определяет высоту списка, но не как обычно, в пикселях, а в текстовых строках. Например, чтобы иметь список, в котором бы умещалось ровно N строк, надо задать значение этого параметра равным N. Значение height по умолчанию 10.
Все параметры, кроме первого необязательны.
Свойства
Свойство
Список. items
определяет массив строк, содержащихся в списке, а битовый массив, определяющий выбранные элементы списка хранится в свойстве
Список. selection
Для записи этого свойства можно пользоваться не только битовым массивом, но и массивом целых чисел или просто одним числом, как для обычного списка.
События
Список с множественным выбором генерирует те же события что и обычный. При выборе элемента происходит событие
on Список selected Параметр do
Параметр содержит номер выбранного элемента списка или элемента, с которого снят признак выбора. Двойной щелчок на элементе списка вызовет событие
on Список doubleClicked Параметр do
параметр так же будет содержать номер элемента, на котором был сделан двойной щелчок мышью. Следует отметить, что в случае двойного щелчка, при первом нажатии на кнопку мыши сгенерируется событие selected.
Событие
on Список selectionEnd do
Происходит после каждого действия пользователя по выбору или, наоборот, снятию признака выбора с элемента. Например, если за один щелчок мышью выбраны четыре строки, то сгенерируется четыре события selected, а после них одно selectionEnd.
Кнопка выбора объекта
Нажатие данной кнопки переводит 3ds max в стандартный режим выбора объекта. Сама кнопка при этом подсвечивается желтым цветом. Пользователь может выйти из режима, нажав правую кнопку мыши. Синтаксис определения этого компонента следующий
pickbutton Имя_переменной Символьная_строка
message: Символьная_строка filter: Функция
toolTip: Символьная_строка
По умолчанию компонент выравнивается на центр панели.
Параметры
Переменная, указанная в первом параметре, после определения будет содержать ссылку на созданный компонент. Остальные параметры необязательны. Второй параметр определяет текст, который будет выводиться на кнопке. Параметр message так же определяет строку. При переходе в режим выбора объекта, когда кнопка нажата, эта строка появится в статус-строке 3ds max.
Если Вам нужно выбрать один из объектов, обладающих каким-либо свойством, то эти свойства можно определить с помощью параметра filter. В нем должна содержаться ссылка на функцию. В приведенном примере функция-фильтр дает возможность выбирать только те объекты, имя которых начинается на букву “ A ”
utility U "MyUtil"
(fn NameA obj = (obj.name[1] = = "a") or (obj.name[1] = = "A")
pickbutton pb "Select A object" filter:nameA
)
Функция должна иметь только один параметр, в котором ей будет передаваться объект, над которым находится курсор. Возвращаться должно значение true, если объект может быть выбран, и false в противном случае. Параметр toolTip содержит текст всплывающей подсказки для создаваемого компонента.
Свойства
Кроме общих для всех компонент свойств, кнопка выбора объекта имеет только одно
Кнопка_выбора_объекта. object
в котором содержится ссылка на последний выбранный объект. Данное свойство может использоваться только для чтения.
События
При выборе объекта генерируется событие
on Кнопка_выбора_объекта picked Параметр do
В параметре этого события передается ссылка на выбранный объект
Дата добавления: 2015-10-31; просмотров: 100 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Однострочный редактор | | | Индикатор процесса |