![]() |
данные из функции AS3
Доброй ночи. потихому изучаю AS3 вот получилось что получилось..
Код AS3:
Спасибо. |
Хендлеры всегда должны быть void
В onComplete вызвать другую функцию и передать как параметр. Код AS3:
|
Или объявить var img:Array вне метода (в данном случае обработчика события).
Код AS3:
|
Цитата:
|
Цитата:
|
О чем ты говоришь :) парень код в кадре пишет! В противном случае разумеется переменная img была бы полем класса.
|
Спасибо, разобрался.
Да, про поле класса я знаю, не судьба пока мне писать в отдельных файлах. |
Цитата:
|
Я Flex попробовал, вроде бы написать что-то можно, но я хоть ты апстену не понимаю как там рисовать на swf какие-нибудь картинки поля или еще что-то... Во флеше можно и нарисовать и написать..
|
Цитата:
|
То есть? Рисовать во флеше а кодить в билдере? Да это по моему еще хуже извращение чем кодить в о фреймах:-))))
|
Кадры - это жутко неудобно для написания чего-то сложнее баннера. И как раз таки написание в оных, имея более удобные инструменты, можно считать извращением. Почему бы сразу не пойти по верному пути?
ps: в старых иде можно было кодить даже на клипах, что позволяло сделать программу еще более запутанной. |
Не знаю, может быть. Мне кажется можно код по кадрам растолкать, то же самое что и файлы в папках... Только в файлы все на сервер тащить надо а тут адна swf... савсэм адна..:-)
|
Файлы точно также компилируются в swf, их не нужно никуда тащить.
|
Да ладно?! Вот это уже интереснее.. ТО есть мне не придется их тащить на сервер? Блин. Я думал .. Век живи. Походу надо попробовать, тем более у меня стоит Flash Builder 4.6. Он нормален для этих целей?
Кстати не подскажете как можно текстовое поле масштабировать? У меня там картинка выводится. Её надо сделать по размерам поля, тут наверное надо получить как-то его ширину в текущем состоянии этого поля. Ну и хотелось бы что бы она разворачивалась на фулскрине.. |
Цитата:
Цитата:
|
А как же рисовать??? Сейчас сижу и не понимаю.. Вот например форму для отправки обратной связи например как рисовать в билдере?
|
Как вариант: готовите графику во флеш иде (прописываете необходимым объектам имена классов, в настройках в библиотеке, которые будут доступны в вашем проекте после подключения либы), далее экспортируете её в swc и подключаете её к своему проекту.
PS: Должны быть тысячи примеров раскрывающих такой подход. |
ну вот теперь более менее картина проясняется.
а если один какой-то объект надо перерисовать? или размеры подогнать? надо после каждого движения делать экспорт? |
Конечно.
|
Зачем тогда флеш если там не нужно писать код?
Вот у адоба все через ж.. что видео редакторы, то и флеш... |
Приложения можно делать на дисплей листе или на stage3d (используя, например Starling framework). В первом варианте флеш удобен для верстки (т.е. позиционирование, вложенность элементов, масштабирование и т.п.), чего очень и очень не хватает во втором варианте, только не давно появилось расширения для того же старлинга http://www.flasher.ru/forum/blog.php?b=718 . А так или расставлять всё "руками", или писать скрипты для графического редактора, или использовать прочие менее удобные подходы.
|
а что такое дисплей лист?
|
"Обычный способ", то как вы делаете сейчас, без использования stage3d.
|
конечно сейчас буду глупости спрашивать... но все же:
как перетащить отсюда: Код AS1/AS2:
Код AS1/AS2:
Спасибо. Добавлено через 24 минуты Кстати на вопрос так никто и не ответил... Вопрос был как получить вне функции а не засунуть в другую функцию! |
Цитата:
|
На след кадре... это как на след фрейме...., а это может быть выходом..., если результат один то идем в один фрейм а если другой в другой.. а вы говорите во флеше писать не надо... Да в любой, перечисленной вами программе, голову сломать можно :-) :-). То ли дело php, открыл блокнот и пофиг...
Я так понимаю в том примере на один пост выше мне не передать результат первой функции во вторую из-за того что там события -> event:Event ? Или все так можно что-то сделать? |
Ничего, никто ещё не сломал.
Книжку почитайте, Мука. С контекстом видимости переменных ознакомьтесь, атрибутами доступа. Давно бы уже сами всё узнали, вместо того чтоб пестрить тут нубскими вопросами. |
Цитата:
|
Цитата:
Вот: Код AS1/AS2:
А вот так сможно? Код AS1/AS2:
Цитата:
Зря вы про нубские вопросы. У каждого языка есть свои тараканы. И невозможность получить результат выполнения функции в любом месте это "надевание трусов через голову". И то что вам кажется очевидным.... |
Цитата:
|
Цитата:
|
резоннее спросить, в какое время.
|
Ну что ж вы, сир, не вдумываетесь, временами, в столь простые вещи?
Неужто вы хотите полагать, что код, за телом функции линейно следующий лишь выполнится не сразу, а после окончания загрузки? В таком бы случае, зачем там нужна функция вообще? По вашей логике, там было проще прописать загрузку, а ассет на строке чуть ниже стал уже б загружен. Нет, здесь, внимание, такое есть понятие, как асинхронность. Сиё, извольте объяснить, означает, что слушаем мы "onComplete" событие лишь для того, чтобы поймать то место, самое то место, где ассет наш уже загружен, а всё, что далее идёт за функцией начинает выполняться в тот же миг, как начинается загрузка. Извольте иной раз, прежде, чем язык винить - представить, будто вы не понимаете чего-то, и почитать примеры и разъяснения из справки и других полезных книжек. |
А я и не понимаю, как получить мне новую координату и ширину в следующей функции?
Код AS1/AS2:
|
Цитата:
Для меня, кстати, совсем не просто и далеко не логично, почему я не могу загружать что-то синхронно. Да, даже в одном потоке. Да, нет ни одного довода в пользу асинхронных методов там, где нужны (были бы удобнее) синхронные. |
Цитата:
Код AS3:
Загрузилось изображение - вызвали update(stage.stageWidth, stage.stageHeight), выставили текущие размеры сцены. |
exsites, друг мой, успокойтесь вы, расслабьтесь, отдохните.
Существуют в мире программирования глобальные - общие, и локальные переменные. Работающая программа на коем-то ни было языке - это совокупность глобальных переменных(классов с переменными), кои изменяются по всяким событиям, на которые мы добавим слушатель. Представьте себе это, как таймлайн, на котором одно за другим по очереди всплывают какие-то события, и код ваш обрабатывает их, тот, который внутри обработчиков(функций). https://pp.vk.me/c625826/v625826630/...L8yEj7A-hY.jpg |
Цитата:
Цитата:
Цитата:
Глобальные переменные зло. Во всяком случае в php. Меня интересует, могу ли я результат выполнения функции передать в другую функцию как я написал в предыдущем посте? Можно или нет? Или мне надо весь код заново переписывать ввиду того что надо по другому? |
Цитата:
Кстати! Этот процесс тоже, выходит, асинхронный: пока ты крутишь перед носом пользователя фронтенд-прелоадер, где-то там в бэкенде скрипт синхронно для себя, но асинхронно для пользователя, пыхтит над результатом, которого этот самый пользователь ожидает. |
| Часовой пояс GMT +4, время: 13:23. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.