![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Jan 2010
Сообщений: 2
|
Всем привет и доброго времени суток.
Кто может подскажите. Если это где-то было, то не обессудте и в топку не кидайте. Вобщем, я создал клип-рекламный банер. Создал новый слой, который виден постоянно, на протяжении всего клипа и не изменяется. На слое создал кнопки. Сначала нарисовал их, потом правая кнопка мыши-> преобразовать в символ. Выбираю тип "кнопка", в том же окне ввожу имя knopa1, класс knopa1. OK. В библиотеке появился экземпляр knopa1. Хочу подключить для начала "хэлоу ворд!" к одной из кнопок. Делаю следующее. Файл->создать->файл Action Script В нём пишу: package { import flash.display.*; import flash.events.*; import flash.net.*; public class Main extends Sprite { public function Main() { knopa1.addEventListener(MouseEvent.CLICK, this.openURL); } public function openURL(event:MouseEvent) { trace("button pressed"); //var url:String = "http://www.adobe.com"; //var request:URLRequest = new URLRequest(url); //navigateToURL (request, "_blank"); } } } CTRL+Enter Выводит следующее: TypeError: Error #1006: addEventListener is not a function. at Main1$iinit() Кто знает, в чём косяк?? Хэлп, а то я собрался уже убиваться)))) Самая элементарщина, а во флэше не даётся... ((( надежда на вас, уважаемые!!! Да, забыл скаазать, что в свойствах публикации проекта указал базовый класс Main Благодарю за внимание и сострадание ![]() Добавлено через 7 минут Только не блокируйте пост за "неотражение темы вопроса в заголовке" Хотел изменить заголовок, он не меняется, тема не удаляется, sorry Последний раз редактировалось wvxvw; 18.01.2010 в 04:27. |
|
|||||
|
Modus ponens
|
Сейчас пользователи сами не могут менять название темы, если ошиблись - оставьте в топе сообщение, модераторы прочитают и поменяют.
В вашем случае, очевисно что - либо knopa1 не существует. - либо компилятор не знает, что такое knopa1. - либо она не наследует EventDispatcher. Технически, вы 1. должны были объявить ее в вашем классе. 2. удостоверится в ее наличии. 3. вызвать в классе super() в конструкторе.
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 2
|
кнопку компилятор видет. Если изменить её имя, он пишет:
Variable knopa11 is not defined. at Main1$iinit() 1. должны были объявить ее в вашем классе. Если она в библиотеке, то её не видно в классе?? Попробовал сделать всё, как написано выше но в новом проекте - работает. когда один кадр, один слой и больше ничего нет, то всё путём. без super() В готовом проекте - такой косяк... неужели переделывать всё из-за этого??? ![]() Признаться, в VS всё гараздо проще, кнопку на форму, повесил на неё функцию и всё ровно... а тут эээххх..... Добавлено через 9 часов 55 минут Думал,что для вас это не проблема. Чтож курю хелп по третьему кругу. |
|
|||||
|
Регистрация: Sep 2006
Сообщений: 145
|
так не обязательно же пэкеджи использовать. тем более для вашего проэкта.
import flash.display.*; import flash.events.*; import flash.net.*; knopa1.addEventListener(MouseEvent.CLICK, navigate); function navigate(event:MouseEvent) { trace("button pressed"); //var url:String = "http://www.adobe.com"; //var request:URLRequest = new URLRequest(url); //navigateToURL (request, "_blank"); } |
![]() |
![]() |
Часовой пояс GMT +4, время: 15:57. |
|
|
« Предыдущая тема | Следующая тема » |
|
|