flash.debugger.enterDebugger()
четверг, март 13, 2008- import flash.debugger.enterDebugger;
- enterDebugger();
Попробуйте во время деббага ![]()
Поведение такое-же как при breakpoint.
Благодарю Ростика за информацию!
Попробуйте во время деббага ![]()
Поведение такое-же как при breakpoint.
Благодарю Ростика за информацию!
Последняя строчка кода выдаст ошибку:
ReferenceError: Error #1056: Cannot create property ns::name on flash.utils.Dictionary.
Т.е. нельзя создать переменную в Dictionary типа QName.
А Вы знаете какие ещё типы не поддерживает Dictionary?
Благодарю Олега Галабурда (он же a_[w]) за информацию!
Иногда нам нужно знать произошло ли событие на подписчике или пришло вследствие bubbling. Например, нам нужно отследить нажатие мыши на stage, но нам точно нужно знать что пользователь кликнул именно на stage, а не на его child. Мы конечно можем сделать
stage.mouseChildren = false;
но это чаще всего не подходит.
Можно поступить двумя равносильными способами.
В обработчике для stage выполняем проверку на равенство event.target с event.currentTarget:
Или проверим какая фаза event flow. Если она равна 2 (target phase), то событие произошло именно на stage. В ином случае, прекращаем выполнение обработчика:
Подробнее про событийную модель в ActionScript 3.0 Вы можете почитать в докладе Константина Ковалёва.
Вы никогда не задумывались как может setter (в mxml), например width, который принимает Number, может принимать значения вида ‘50%’?
А всё очень просто
Существует метатег [PercentProxy], который как параметр принимает имя метода, который будет задействован, если значение будет задано в процентах.
Пример. Созданим класс FleasCatcher:
Теперь мы можем написать так:
Или так:
Адобовцы довольно часто используют namespace mx_internal для внутреннего общения между компонентами. Но и нам, иногда, полезно поиспользовать этот namespace. Например, нам нужно в Button.label отобразить html-текст.
Но это нужно использовать крайне осторожно, т.к. очень легко поламать компонентину (т.к. запуск подобного метода выбивается из цикла жизни компонента) или просто при следующем обновлении компонент просто переопределит то, что Вы задали в значение, которое было до использования метода.