AS3 - SimpleButton внутри спрайта

У меня есть меню, которое является спрайтом, и я добавляю кнопку, чтобы иметь возможность свернуть меню. Я использую SimpleButton() и я добавил кнопку, как ребенок в меню, так menu.addChild(button) Проблема, с которой я столкнулся, заключается в том, что, когда я наведу курсор мыши и нажму кнопку, ни одно из событий не запускается Спрайт меню имеет свою собственную кнопку мыши над событием, и кнопка должна располагаться относительно меню, чтобы иметь смысл быть дочерним элементом меню. Как я могу заставить кнопку все еще работать?

Заранее спасибо!

редактировать
Вот мой код:

protected const rectangle:Sprite = new Sprite(); 
private const minimizeBtn:SimpleButton = new SimpleButton(new ButtonDisplayState(MINIMIZE_BTN_BG_COLOR, 15, 15), new ButtonDisplayState(0xFF0000, 15, 15), new ButtonDisplayState(0x00FF00, 15, 15), new ButtonDisplayState(0x0FF000, 15, 15)); 
rectangle.addEventListener(MouseEvent.MOUSE_OVER, rectMouseOver);
addChild(rectangle);
rectangle.addChild(minimizeBtn);

2 ответа

Родительский спрайт (меню) может есть события мыши. Попробуйте установить mouseChildren = true для этого объекта.

Прежде всего, какого черта вы определяете свою кнопку как const? Определите это как неконстантную переменную, которая просто глупа, если у вас нет ДЕЙСТВИТЕЛЬНО веской причины для этого. Во-вторых, добавьте слушателей событий DIRECTLY в minimalBtn, а не в контейнер прямоугольника (родительский объект).

Также имейте в виду, что, хотя в документации говорится, что четыре состояния кнопки являются необязательными в конструкторе, они на самом деле вовсе не являются необязательными. Класс очень специфичен в отношении параметров конструктора, которые приведут к его поломке и неправильной работе во время выполнения (конечно, без ошибок компиляции или времени выполнения, так как flash - победитель этого).

Так что, хотя вы предоставляете здесь все четыре аргумента конструктора, может быть, с чем-то повозится, если мои предыдущие предложения не пройдут. Смотрите следующую ссылку для получения дополнительной информации о конструкторе.

http://selfdocumentingcode.blogspot.com/2009/04/flash-simplebutton-and-mouseover-and.html

Другие вопросы по тегам