Flex: установка точки регистрации на экранном объекте - PullRequest
6 голосов
/ 05 марта 2009

Каков наилучший способ изменить / установить точку регистрации на экранном объекте Flex 3? Я знаю, что на самом деле это не встроенный способ легко изменить, но есть ли у кого-нибудь какие-либо предложения о том, как я могу расширить UIComponent для достижения этой цели?

Ответы [ 3 ]

2 голосов
/ 10 апреля 2009

По какой-то причине API-интерфейс Flash Player не отображает точку регистрации DisplayObjects (а Flash IDE затрудняет их изменение после создания объекта). Лучшее решение, как указал Дэвид, - добавить ваш компонент как дочерний элемент другого компонента (UIComponent будет в порядке). Так, например, если бы у меня была Button, и я хотел, чтобы ее точка регистрации находилась в ее центре, я бы добавил ее как дочерний элемент UIComponent (не Canvas) и сместил дочерний элемент, установив его положение (-button.width/2, -button.height/2).

1 голос
/ 23 августа 2009

Поместите ваш DisplayObject внутри спрайта и установите для x & y позиций DisplayObject отрицательное значение вашей целевой точки регистрации. Примените все преобразования к контейнеру Sprite.

0 голосов
/ 05 марта 2009

Поместите его в контейнер Canvas с атрибутом clipContent, установленным в false. Внутри холста вы можете поместить свой объект куда угодно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...