Динамическое задание параметров апплета из JavaScript | |||
Открытие и закрытие режима редактирования
Задание слоев и их элементов Задание изображения создаваемого апплетом Задание активных зон Пример Для вставки в HTML Java-апплетов используются теги <APPLET> ... </APPLET>. (См. "Статическое описание параметров апплета. Тег <APPLET>"). В тег <APPLET> необходимо добавить атрибут "mayscript". Это означает, что к этому апплету можно обращаться из JavaScript. Для задания параметров апплету вместо тега <PARAM> используются public методы, которые предоставляет апплет. В этом разделе описываются методы, с
помощью которых можно создать новый слой,
задать его элементы, создать список слоев
для отображения и задать группу слоев для
поиска активных элементов. Перед началом редактирования параметров апплета необходимо открыть режим редактирования отрытие режима редактирования open_change_mode( int bflag ), параметр bflag задает признак блокировки реакции на движение мыши и перерисовку, =0 реакция на движение мыши и перерисовка разрешаются, =1 запрещаются. После изменения элементов слоя режим редактирования нужно закрыть конец режима изменения элементов слоя int close_change_mode( int redraw_flag ) redraw_flag - задает режим перерисовки изображения при снятии режима изменения слоев: bit00(0x00001) - переопределение активных элементов по новому положения курсора bit01(0x00002) - отказ от всех активных элементов и стирание из отображения bit02(0x00004) - перепоказ изображения и определенных к данному моменту активных элементов bit04(0x00010) - изменение изображения без снятия режима изменеия слоев возвращает: 0 если изображение полностью построено -1 если имеются не загруженные растровые изображения. Для создания нового слоя и описания его атрибутов апплет предоставляет метод создание нового слоя и установка его в качестве текущего, если слой уже имеется, то выполняется изменение атрибутов слоя add_layer( String layer_name, String layer_attribs_list ) layer_name - имя слоя, layer_attribs_list - описание атрибутов слоя Изменять элементы слоя можно только для установленного текущего слоя. Он устанавливается методами add_layer или set_current_layer и сбрасывается методом close_change_mode. начало изменения элементов слоя int set_current_layer( String layer_name ) layer_name - имя слоя возвращает номер слоя, если слой существует, иначе -1 Элементы в созданный слой добавляются с помощью методов: изменение элемента слоя по номеру элемента set_layer_element_num( int num, String atr_name, String atr_value ) num - номер элемента, если num < 0, или > максимального, то при значении atr_name "object" выполняется добавление нового элемента, иначе замена существующего элемента, atr_name - "object" - переопределение объекта, "attribs" - переопределение общих атрибутов (ключевых параметров) atr_value - значение определяемых атрибутов или полное описание элемента слоя изменение элемента слоя по идентификатору элемента int set_layer_element_id( int element_id, String atr_name, String atr_value ) element_id - идентификатор элемента слоя atr_name - "object" - переопределение объекта, "attribs" - переопределение общих атрибутов (ключевых параметров)объекта и любых атрибутов текстового элемента atr_value - значение определяемых атрибутов или полное описание элемента слоя возвращает номер элемента, или -1 если элемент не найден Установка списка слоев для отображения осуществляется методом set_layers_draw , который измененяет состав слоев в группе с именем $$draw_list и включает ее в список групп слоев для отображения, и методом set_draw_groups. установка нового списка слоев для отображения set_layers_draw( String list ) list - список элементов группы (см. "Задание списка элементов группы")задание списка групп слоев для отображения set_draw_groups( String groups_list ) groups_list - список групп Множество активных зон задается как список групп слоев и затем эти группы объявляются активными. создание новой группы и задание для нее списка объектов, если группа уже существует, то происходит установка для нее нового списка объектов int add_group( String group_name, String list ) group_name - имя группы list - список элементов группы (см. "Задание списка элементов группы") возвращает 0 если группа успешно создана или существует, -1 если группу создать не удалось (уже существует объект с заданным именем. задание списка групп слоев для поиска активных элементов set_active_groups( String groups_list ) groups_list - список групп
|