Могут ли Rect закругленные углы быть разными - PullRequest
1 голос
/ 21 июня 2010

Когда я использую <s:Rect> для создания прямоугольника, я использую radiusX, чтобы получить закругленные углы.Проблема в том, что все одинаковы округлости.Есть ли что-то похожее на Rect, которое позволяет мне контролировать радиус каждого угла отдельно?Если нет, то какой лучший способ создать это с нуля?графическая библиотека или что?

Ответы [ 3 ]

5 голосов
/ 21 июня 2010

Вы можете сделать это с помощью Rect, установив конкретные значения для свойств topRightRadiusX, topLeftRadiusX, bottomRightRadiusX и bottomLeftRadiusX вместо установки radiusX.

1 голос
/ 11 апреля 2011

        public var rectangle:Shape=new Shape();

        public var temp:int=1;

        public var ui:UIComponent=new UIComponent();
        public var i:int=new int;
        public var j:int=new int;
        public var n:int=0;

        public function init(event:Event):void
        {

            ui.addChild(rectangle);

            myCanvas.addChild(ui);
            rectangle.graphics.lineStyle(4,0x0000FF,1,false,"normal","none","bevel",9);
            rectangle.graphics.drawRoundRect(20,20,200,200,0,0);
        }


      private function changeSize():void
      {
          if(temp>=1)
          {
           rectangle.graphics.clear();
          }
          rectangle.graphics.lineStyle(4,0x0000FF,1,false,"normal","none","bevel",9);
          rectangle.graphics.drawRoundRect(20,20,200,200,hSlider.value,hSlider.value);      
      }
    ]]>
</mx:Script>

    <mx:Canvas height="100%" width="100%" id="myCanvas">
        <mx:HSlider id="hSlider" minimum="0" maximum="170" value="0"  
        dataTipPlacement="top" 
        snapInterval="1" tickInterval="1" 
        labels="['0%','100%']" 
        liveDragging="true"  
        change="changeSize();" x="25" y="233"/> 
     </mx:Canvas>

0 голосов
/ 21 июня 2010

Вы можете проверить компонент StyledBox здесь: http://carrythezero.net/blog/2009/06/01/flex-rounding-specific-corners-on-a-box/

Это расширяет окно, и вы можете указать через CSS, какие углы вы хотите округлить.

...