![]() |
|
||||||||||
|
|
|
|||||
|
возник ещё вопрос из ряда "на засыпку".
Допустим мы программно что-то рисуем, создаём класс Sprite или класс унаследованный от него. например this.menuWindow = new MenuWindow(); затем мы добавляем его на сцену addChild(this.menuWindow); Чтобы удалить дисплей объект мы используем removeChild. В этом случае у нас удаляеттся только вид объекта но не сам объект. Это хорошо. Но у нас остался тот же visible=false. Который действует почти так же. Вот и спрашивается в каких случаях лучше использовать removeChild а в каких visible=false, в чём их разница, и что вообще можете посоветовать по этому поводу? Последний раз редактировалось DRAGOnoid; 24.09.2007 в 17:49. |
|
|||||
|
блин сам подумал и понял одну вещь =]
при removeChild - не будет доступов типа parent. =] но всёравно хотел бы ещё ваши мнения послушать |
|
|||||
|
стервочка (я мужик)
|
Работа с объектом при visible=false остаётся точно такой же. граници родителя считаются с учём клипа и т.д. при visible=false объект остётся дитём парента и учавствует во всех операциях, а так же, если надо постоянно показывать и прятать предмет, лучше использовать visible=false, так как это быстрее.
|
|
|||||
|
спасибо =)
|
|
|||||
|
подскажите пожалуйста такой момент.
У меня на главной сцене есть несколько предметов, им даны разные имена. Я гружу XML в котором содержатся эти имена (таким образом нахожу для кода нужные предметы) но бывает либо опечатка редактора либо просто звёзды не так встали и в XML кто то написал название несуществующего предмета. короче возникает ошибка ReferenceError: Error #1069: Property ovoshi3 not found on kitchen and there is no default value. как мне проверить существует ли такой предмет по имени? я делаю это так - но почему то не срабатывает |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
hasOwnProperty
|
|
|||||
|
спасибо!!! *__*
|
|
|||||
|
может есть смысл прикрепить эту тему?
а то я частенько её кидаю своим подаванцам , а искать её всё сложнее ![]() |
|
|||||
|
спасибо что прикрепили - реально помогает!
у меня тут новая трудность - немогу решить. ситуация такова. есть один единственный SWF в котором в библиотеке забиты классы спрайтов (предметов) эти предметы могут быть а могут небыть.. их имена я подгружаю из XML. дальше по этим именам ищю такое свойство в главном классе и создаю объект. но есть пара странностей - уже на первичном классе немогу без глюков определить есть ли класс в библиотеке. вот как я делаю trace (bread); // выдаёт [class bread]
trace (this.hasOwnProperty(bread)); // выдаёт false Оо
// ладно способ 2
trace (getDefinitionByName('bread')); // выдаёт [class bread]
// однако
// trace (getDefinitionByName('bread2'));// ReferenceError: Error #1065: Variable bread2 is not defined.
// объединяю
trace (this.hasOwnProperty(getDefinitionByName('bread')));// выдаёт false Т_Т
![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Ну правильно выдает false.
Во-первых, ты передаешь не строковое значение в hasOwnProperty. Во-вторых, для того, чтобы определить, есть ли класс, можно использовать loaderInfo.applicationDomain.hasDefinition(). |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:36. |
|
|
« Предыдущая тема | Следующая тема » |
|
|