PDA

Просмотр полной версии : Выполнение команды, заданной строковой переменной.


Torero
17.07.2007, 19:20
Есть строковая переменная str="mc.lineTo(100,100)". Есть-ли способ выполнить команду в ней содержащуюся?

etc
17.07.2007, 19:29
Распарсить и выполнить.

Torero
17.07.2007, 19:34
Смотрю хелп по XML - не вижу.
Какими командами это делается?
---
если через fistChildNode, то как выполнить?

etc
17.07.2007, 19:40
Написать парсер, который будет парсить и выполнять такой код.

Torero
17.07.2007, 20:00
Кажись дошла суть ответа. Вопрос в том, что текстовой переменной может быть задан набор произвольных(не однотипных) команд различным объектам. Строка формируется динамически.

etc
17.07.2007, 20:03
Тогда пиши свой интерпретатор. :D
Задача в общем случае имеет решение оооооочень нетривиальное. Все равно что писать интерпретатор JavaScript.

Torero
17.07.2007, 20:23
чтоб тему новую не создавать....
задача, собственно, следующая: экземпляр класса создается динамически и, при создании получает набор свойств объекта, которые изменяются, скажем, при onRollOver. Набор свойств лежит в массиве. Самое простое решение - при каждом onRollOver обращаться к массиву и менять у объекта те свойства, которые в нем указаны. Проблема в том, что объектов много, событий много и свойств, изменяемых при этих событиях тоже много - хотел избежать необходимости постоянно перерывать массив.
Для наглядности: prop_arr - массив свойств объекта some_mc, delta_arr - массив изменения этих свойств при onRollOver;

prop_arr=["_x","_yscale","_xscale","_alpha"]
delta_arr=["-30","20","20","10"]

Хотел создать строковую переменную, затолкнуть в нее все необхдимые команды и выполнять ее при событии - не сложилось.:)
Можно как-нибудь 1 раз динамически прописать onRollOver для данного объекта и постоянно не обращаться к массиву?