![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Aug 2013
Адрес: Москва
Сообщений: 59
|
Здавствуйте! Во Flex не срабатывает событие MOUSE_DOWN. Точнее, когда запускаю проект, то никаких ошибок не вылазит, и всё успешно запускается; но приложение ну совсем никак не реагирует на клик мышкой.
У меня есть объект M, который добавляет объект S: stage.addChild(S). M же графики никакой не содержит. Вот что находится внутри S: import flash.display.Sprite; import flash.display.Stage; import flash.events.Event; import flash.events.MouseEvent; public dynamic class S extends Sprite { public function S() { graphics.drawRect(0, 0, 1080, 780); addEventListener(Event.ADDED_TO_STAGE, onAddStage); } private function onAddStage(e:Event):void { addEventListener(MouseEvent.MOUSE_DOWN, startDr); trace(parent); } private function startDr(e:MouseEvent):void { trace("!!!!!!!!!!!!!!!!!!!!!!!!!"); var r:Shape = new Shape(); r.x = 350; r.y = 250; r.graphics.beginFill(0x33FF33); r.graphics.drawRect(0, 0, 100, 100); r.graphics.endFill(); addChild(r); startDrag(); } } |
|
|||||
|
[+1 05.11.12]
Регистрация: Feb 2011
Сообщений: 431
|
public function S() { graphics.beginFill(0xff0000); //вот это добавьте -это определяет заливку, graphics.lineStyle(..) определяет контур graphics.drawRect(0, 0, 1080, 780); addEventListener(Event.ADDED_TO_STAGE, onAddStage); } ![]() Он у вас без заливки и контура, соответственно по нему вы не кликните.
__________________
Oomph |
|
|||||
|
Регистрация: Aug 2013
Адрес: Москва
Сообщений: 59
|
Да точно, тупанул... Прошу прощения за такой глупый вопрос!
|
|
|||||
|
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
Цитата:
Цитата:
Последний раз редактировалось Akopalipsis; 03.10.2013 в 00:01. |
|
|||||
|
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
я хотел сказать, что на стейдж вешать слушателей более приемлемо, чем добавлять на неё обьекты.
Цитата:
|
|
|||||
|
Цитата:
![]() "Я не могу пройти по соседскому газону, поэтому лучше поставлю туда тумбочку" Цитата:
![]() Представте что у вас есть кнопка "закрыть приложение", а срабатывает она при нажатии на любую область экрана. Я бы сошел с ума от такой программы) |
|
|||||
|
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
А если есть десять кнопок, то лучше десять слушателей или один слушатель на стедж?
Или если нужно вообще весь экран отслеживать на клик? Вот вообще весь, то так всё равно нельзя? Добавлено через 7 минут Цитата:
я точно знаю, что добавлять на стейдж обьекты - нельзя! Недавно столкнулся с проблемой, на которую мне посоветовали повесить слушателя на стейдж. По Вашему это медвежий совет? Или слушать клавиатуру со стейджа === добавить десять классов на стейдж ? |
|
|||||
|
Регистрация: Aug 2013
Адрес: Москва
Сообщений: 59
|
А почему добавлять объекты на стейдж плохо? Чем это черевато-то?
|
|
|||||
|
Akopalipsis на стейдж лучше вешать события MOUSE_MOVE, MOUSE_UP. И то не всегда. Всё если у Вас 10 кнопкок, то лучше создать контейнер и вешать на него события MOUSE_DOWN, etc...
Ioangum Цитата:
__________________
return this... |
![]() |
![]() |
Часовой пояс GMT +4, время: 15:46. |
|
|
« Предыдущая тема | Следующая тема » |
|
|