Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Событие на картинке (http://www.flasher.ru/forum/showthread.php?t=126400)

AQUAFRESH 18.06.2009 03:57

Событие на картинке
 
Такой вопрос ботский ))) опыт программирования есть во FLEX и C#/.NET

но во флеш ide вообще нешарю ))
вот есть у меня кнопка... x и y это её координаты и через обьект я могу обращаться к ним и изменять... но если у меня не кнопка а картинка с библиотеки как сделать что бы у неё был обьект или как к ней обратиться непонятно ))) :drinks:

kkin 18.06.2009 08:44

не знаю на сколько я тебя понял но вот посмотри
Ложишь картинку на сцену на ней кликаешь правой кнопкой мауса, выбираешь Convert to Symbol. Далее опять выделяешь эту картинку жмешь ctrl+F3 далее в поле Instance name пишешь название объекта ну например im1
теперь допустим назначаешь координаты этому объекту
Код AS3:

im1.y= 250;
im1.x= 250;


AL.exe 19.06.2009 01:21

В символ конвертировать необязательно.

Добавлено через 2 минуты
В смысле, в Вашем примере нужно, а если экспортировать как класс, то достаточно в свойствах картинки в библиотеке имя класса прописать, а потом ужедобавлять на сцену.

AQUAFRESH 19.06.2009 03:24

Я сделал как вы сказали... Прописал на картинке имя класса Bomb;
как теперь его добавитьна экран??


var b:Bomb;
stage.addChild(b);
не добавляет


есть 3 вопроса
1) выдиление new не работает - var b:Bomb=new Bomb(); ?
2) почему не добавляет картинку на экран ?
3) typeof(b) почему возращает object а не Bomb;

если ответите на 3 эти вопроса то вы тупо девид блейн )))
ну и вообще просто классный чел )

AL.exe 19.06.2009 03:57

Блин, ну Вы хоть посмотрите какой базовый класс задается по умолчанию картинке в библиотеке...
Код AS3:

var b:Bomb = new Bomb(70,60)
addChild(new Bitmap(b))

Вот Вам и ответ на первые два вопроса.

Насчет третьего - он и не должен показывать Bomb. Если нужно проверить, что именно Bomb, юзайте
Код AS3:

trace(b is Bomb)

Цитата:

Evaluates expression and returns a string specifying the expression's data type. The result is limited to six possible string values: boolean, function, number, object, string, and xml. If you apply this operator to an instance of a user-defined class, the result is the string object. The typeof operator is included for backward compatibility. Use the is operator to check type compatibility.
P.S> Теперь я Девид Блейн и вообще классный чел.

etc 19.06.2009 07:50

Цитата:

Сообщение от AL.exe (Сообщение 829163)
Насчет третьего - он и не должен показывать Bomb. Если нужно проверить, что именно Bomb, юзайте
Код AS3:

trace(b is Bomb)


Наследник Bomb тоже покатит.

AQUAFRESH 19.06.2009 08:15

Всё я разобрался спасиба.... ещё последнее хотел спросить... вот я добавил одну картинку потом вторую ... вторая может перекрывать первую... а как указывать это приоритет битмаповых слоёв ???

Psycho Tiger 19.06.2009 11:14

Это глубины. Какую позже добавите - то будет лежать выше.
Ответ ищи в AS3 Tips&Tricks.

AL.exe 20.06.2009 14:41

Цитата:

Сообщение от __etc (Сообщение 829176)
Наследник Bomb тоже покатит.

Конечно. А зачем определять что именно этот класс? Мне всегда достаточно было узнать, что базовый класс совпадает. В наследнике все равно все нужные методы и поля будут.

Буду благодарен, если приведешь хотя бы один пример, где нужно четко знать, что инстанция является объектом конкретного класса, а не класса насоледника, к примеру.

etc 20.06.2009 14:47

Например, в вьювере-контейнере, в который могут добавляться как обычные вьюверы, так и кастомные, наследующиеся от обычного. При этом вьювер-контейнер работает только с обычными.


Часовой пояс GMT +4, время: 00:08.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.