Archive for the ‘ActionScript 3.0’ Category
Wednesday, January 23rd, 2008
Есть класс который диспатчит событие и есть желание получить удобство написания кода когда подписываемся на события этого класса.
Для этого делаем так:
Класс события:
package com.the33cows.somepackage
{
import flash.events.Event;
public class SomeEvent extends Event
{
public static const VIVA_INDIA : String = "vivaIndia";
.......
}
Класс:
package com.the33cows.somepackage
{
import flash.events.EventDispatcher;
[Event(name="vivaIndia", type="com.the33cows.somepackage.SomeEvent")]
public class SomeEventDispatcher extends EventDispatcher
{
...
}
}
теперь при наборе кода получаем такое:

что есть очень приятно).
Я всегда себе задавал вопрос почему, адоб использует именно такую конструкцию
[Event(name="vivaIndia", type="com.the33cows.somepackage.SomeEvent")]
по-моемому было бы логичнее использовать
[Event(name="VIVA_INDIA", type="com.the33cows.somepackage.SomeEvent")]
т.е. прямую ссылку на константу хранящую конкретное название события, а не само название события, но так не найдя на него ответа, решил, что так нужно и парсер “умный”, он сам на лету привязывает конкретную константу с именем события к этому тегу.
Оказалось парсер безумно туп!
У меня образовалось событие в названии которого были несколько прописных букв подряд
для наглядного примера:
public static const VIVA_INDIA : String = "VIVA_INDIA_OMG";
для него метатег выглядел так
[Event(name="VIVA_INDIA_OMG", type="com.the33cows.somepackage.SomeEvent")]
на что я в ответ получил:

Правда не очень привлекательная картина? )
Справедливо как для 2.0.1 так и для 3 го билдера
Будьте счастливы и кодируйте с миром ).
Posted in ActionScript 3.0, Flex Builder 2, Flex Builder 3 | No Comments »
Monday, December 24th, 2007
Давно что-то не писал, накопилось много мелочей о которых иногда полезно знать, а иногда просто не стоит обращать внимание:
- Во флексе есть фича что он автоматом лишнии убирает пункты меню которое появляется при нажатии правой кнопки мыши. Это приятно, но стоит знать что при создании попапа с помощью PopUpManager этой фичи нету (все пункты меню имеют место быть) и их нужно отрубать ручками.
- ФФ, делаем так: открываем приложение (желательно тянущееся чтобы наглядно было), открываем второй таб, переходим в него, ресайзим окно браузера, и возвращаемся на наше приложение и видим бяку: флеш и не думал ресайзится (повторный ресайз исправляет ситуацию)).
UPD: решение проблемы подсказал 7htsky : “надо поставить margin: 1px 0 0 0, нашли решение тут“
- Ситуация: есть ваш компонент наследованный от чего-то и его нужно использовать вместо стандартного, внутри используются стейты (например ваш мега TitleWindow внутри него 48 состояний) если стейты объявиться <mx:states /> то будет ругаться, стейты нужно объявлять просто <states />
- Все лаяут контейнеры (Canvas, Box…) плохо дружат со скроллерами (также как это делает ИЕ) — если ширина контента выставлена 100%, а по высоте контент больше чем контейнер то появляются 2 скроллера вертикальный и горизонтальный причем горизонтальный скролит именно на ширину появившегося вертикального скроллера (не приятно это, то ли дело ФФ
)
- Проекта MyLar больше нету,его переименовали в Mylyn. Почитать что это за птица.
- Флеш блох оказывается очень много ) и они часто появляются.
Глобальные посты и темы будут попозже — сейчас идет подготовка к новому году)
Posted in ActionScript 3.0, Flex, mxml | 2 Comments »
Tuesday, November 27th, 2007
Что стартуем
Стартуем курсы по Flex, ActionScript 3.0
Для чего стартуем
Научить людей основам(и не только) Flex, ActionScript 3.0, в процессе обучения написать живое приложение.
Кому стоит читать дальше
Молодым амбициозным людям которые только начинают свою “флешово-флексовую” жизнь, и хотят попрактивоваться. Всем кто уже “напрактиковался” в своей жизни советую прокрутить конец поста и почитать пункт “Flash|Flex для больших дядей”
.
Более подробная информация:
Кто это организует и кто будет рассказывать
Организую эти курсы я, я же буду и рассказывать страшные истории.
Место веселых стартов
Курсы будут в г. Харькове. Вероятно в ХАИ.
Кого я жду на курсах?
Жду я человеков, которые:
- Хотят получить знания по Flex|ActionScript3.0
- Живут в Харькове
- Имеют базовые знания по программированию, ООП и писали программы сложнее Hello World на любом из языков (имеют понятие, что такое массив, цикл ,класс…)
- Способны самообучатся в заданном направлении )
- Видели английский язык и понимаю как минимум 1 слово из 10 прочитаных
- Учитывая что “веселые старты” – это проект не коммерческий я ожидаю адекватное поведение людей, выполнение некоторых требований и ответственности
Чем я буду веселить человеков
Я буду веселить человеков написание программ на флекс на примере конкретного приложения. В веселье будет входить:
- Введение в науку (что где пыцкать чтобы заработало)
- Немного теории и практики проектирования приложения, паттерны проектирования. Пощупаем немного UML
- Создание и использование компонентов
- Стилирование компонентов
- Общение клиент/сервер (вероятно на примере AMFPHP)
- Разные страшные слова типа биндинг )
- Работа в комманде
- Где и что искать, кого спрашивать
- Другие разные плюшки
Для чего это мне нужно
Мне это нужно потому, что я хочу:
- Эксперементов на живых людях.
- Попробывать себя в качестве “Умного дядьки”, возможность покапать глубже некоторые темы
- Нести знания в массы и пропагандировать любимую технологию
- Помочь людям которые хотят и могут учится, помочь сделать это быстрее
- Помочь ВУЗу где я учился
- Немного растормашить отечественных флешеров/флексеров
Что это даст человекам
- Знания и опыт
- Быстрый старт
- Общение с новыми людьми
- Хлеба и зрелищ
О каком конкретном проекте идет и почему я решил это все организовать
Есть интересный проект, который неплохо бы сделать в качестве гуманитарной помощи моему вузу — ХАИ. Этот проект совершенно не коммерческий и я не получу от его написания никакой выгоды кроме морального удовлетворения. Кроме него, у меня есть другие интересные проекты приоритет которых выше. Поэтом я предлагаю такой вот обмен – код за знания. Более подробно о проекте – в процессе, но обещаю, что будет интересно.
В проекте есть пара вещей, которые потом можно будет развить в отдельные проекты и получать из них выгоду при желании, если у вас канешно это получится;). Никто не будет против если вы это сделаете.
Организационные вопросы
Мои контакты есть в блоге.
Я рассчитываю найти несколько адекватных желающих (1-5 человек, дальше как получится). Неадекватных людей, попрошу не беспокоить, ибо делать тут им нечего.
Интерсивность курсов зависит от активности учашихся, для себя я планирую 1-2 встречи в неделю по 2-3-4 часа.
Стартовать надеюсь будем после Нового Года).
Flash|Flex для больших дядей
Для больших дядей есть отдельные предложения. В процессе веселых стартов, можно организовывать встречи и устраивать показательные выступления для других дядей, ну или просто поболтать и поесть мороженого (этак раз в 1-2 месяца, г. Харьков).
Ну и большая просьба для флешеров и флексеров попиарте это предложение среди харьковских знакомых студентов
UPD: совсем старый стал ) и забыл написать главное. Кто хочет поучавствовать пишите письма со своми контактами, где-то в середине декабря (если будет с кем) организуем встречу, и пообщаемся в живом эфире. Мои Контакты
Posted in AIR, ActionScript 3.0, Flex, Flex Builder 2, Flex Builder 3, UML Tool, mxml, Люди | 22 Comments »
Monday, November 12th, 2007
Constantiner делится своими впечатлениями о ClientSide-2007. Захватывающий отчет с передовой. много хороших и интересный ссылок и новостей, самая привлекательная для меня это
Так что не исключено (тьфу-тьфу-тьфу), что в скором времени у нас будет Flash Platform User Group или что-то в этом роде. Которая будет двигаться силами заинтересованных ведущих разработчиков России при поддержке Adobe. Ориентировочно это будут ежемесячные встречи с докладами в Москве и, возможно, в Питере.
Интересно когда у нас начнется что-то подобное? Ведущие разработчики Украины, не желаете что-нибудь организовать, не с таким канешно размахом, но все же? Я например могу организовать аудиторию с компьтерами, проектором, в НАУ “ХАИ” (Харьков, Украина), где можно будет поделится опытом или просто обсудить на примерах проблемы человечества и вселенной )
Posted in AIR, ActionScript 3.0, Flex, Люди | 2 Comments »
Tuesday, November 6th, 2007
Индусы жгут, других слов нету! )
Работал я с ними мало поэтому пока только поверхностные отжиги).
Чтобы получить список доступных устройств (вебкамер и микрофонов) нужно использовать свойство names у соответствующих классов
Camera.names : Array [read-only]
Microphone.names : Array [read-only]
Вроде все логично, но только до этого момента дальше чтобы получить конкретное устройство у класса Camera есть метод getCamera(), а у Microphone – getMicrophone() и выглядит это следующим образом:
public static function getMicrophone(index:int = 0):Microphone
public static function getCamera(name:String = null):Camera
Как-то странно подумал я: “в одном случае мы инт отдаем в другом стринг”.
С микрофоном решил проблемы быстро ), а вот с камерой уже стало интереснее.
В хелпе параметр name у getCamera() описан так :
name:String (default = null) — Specifies which camera to get, as determined from the array returned by the names property. For most applications, get the default camera by omitting this parameter.
Отдав это имя я получил огромный болт, вернее null, а не камеру. 8 раз проверил – все равно болт. В ходе эксперементов над разумом, попробывал отдать индекс камеры в виде строки, и оно заработало!
Внимание правильный ответ для решения этой проблемы:
var camera : Camera = Camera.getCamera(myIndex.toString());
//где myIndex - это порядковый номер камеры в массиве Camera.names
Привет адоб!
Posted in ActionScript 3.0, Camera, Flex, Microphone, Video | 3 Comments »