Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Как работает scaleX(Y) в mx:UIComponent (http://www.flasher.ru/forum/showthread.php?t=168510)

kosheev_me 21.09.2011 19:25

Как работает scaleX(Y) в mx:UIComponent
 
Вот с какой загадкой столкнулся. В контейнере лежит UIComponent, по щелчку мыши пытаюсь увеличить его, меняя его scaleX. И вот загадка... Его ширина уменьшается вместо того чтобы увеличиться...
Вот какой у меня год:
Код AS3:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
          xmlns:s="library://ns.adobe.com/flex/spark"
          xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
 
<fx:Script>
        <![CDATA[
                protected function bordercontainer1_clickHandler(event:MouseEvent):void
                {
                        trace("--------CLICK--------");
                        wc.scaleX += 1;
                }
 
                protected function wc_enterFrameHandler(event:Event):void
                {
                        trace(wc.width);
                }
 
        ]]>
</fx:Script>
 
<s:BorderContainer width="100%" height="100%" click="bordercontainer1_clickHandler(event)">
        <mx:UIComponent id="wc" width="100%" height="100%" enterFrame="wc_enterFrameHandler(event)" />
</s:BorderContainer>
</s:Application>

Грубо говоря, в этом приложении выводиться текщая ширина компонента с идентифитором wc. При каждом щелчке мыши увеличивается его scaleX. По идее ширина wc должна увеличиваться, но она уменьшается.
Это то, что выводится в консоль:
953
953
953
--------CLICK--------
953
476.5
476.5
476.5
--------CLICK--------
476.5
317.6666666666667
317.6666666666667
317.6666666666667
--------CLICK--------
317.6666666666667
238.25
238.25
238.25
--------CLICK--------
238.25
190.6
190.6
190.6
--------CLICK--------
190.6
158.83333333333334
158.83333333333334
158.83333333333334
--------CLICK--------
158.83333333333334
136.14285714285714
136.14285714285714
136.14285714285714

Почему же ширина компонента уменьшается?
Помогите разобраться, весь мозг сломал....

aux 22.09.2011 02:24

попробуй вместо относительных размеров заюзать абсолютные (не 100% а 100 пикселей например) мне кажется что AVM воспринимает прибавление к 100% как знак начать обратный отсчет и выдает 99%


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

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