上设置特定角半径,如果在VBox上设置cornerRadius
,则所有四个角落都会生效。如何将cornerRadius仅应用于左下角和右下角?默认情况下在VBox
0
A
回答
2
试试这个: - 修改上面的代码是这样的(代码由 - user1367714)
<?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" xmlns:local="*">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<local:stackOverflowCornerRadious x="50" y="50" width="200" height="200"/>
</s:Application>
产品类别: - stackOverflowCornerRadious
package
{
import flash.display.Sprite;
import mx.containers.Box;
import mx.containers.VBox;
import mx.utils.GraphicsUtil;
import spark.primitives.Rect;
public class stackOverflowCornerRadious extends VBox
{
public function stackOverflowCornerRadious()
{
super();
}
override protected function updateDisplayList(unscaledWidth:Number,
unscaledHeight:Number):void
{
super.updateDisplayList(unscaledWidth, unscaledHeight);
graphics.clear();
graphics.beginFill(0x00FF00);
GraphicsUtil.drawRoundRectComplex(graphics,0,0,unscaledWidth,unscaledHeight,0,0,10,10)
graphics.endFill();
}
}
}
5
延长垂直框部件和如下面提到的updateDisplayList重写方法: -
override protected function updateDisplayList(unscaledWidth:Number,
unscaledHeight:Number):void
{
super.updateDisplayList(unscaledWidth, unscaledHeight);
var cornerRadius:Number = getStyle("cornerRadius");
var backgroundColor:int = getStyle("backgroundColor");
var backgroundAlpha:Number = getStyle("backgroundAlpha");
graphics.clear();
// Background
drawRoundRect(0, 0, unscaledWidth, unscaledHeight,
{tl: 0, tr: 0, bl: cornerRadius, br: cornerRadius},
backgroundColor, backgroundAlpha);
}
+0
谢谢你回答这个问题,它似乎不起作用。而drawRoundRect()有6个参数,这里有7个参数。 – jason
2
在flex3
,我必须用来代替延伸垂直框的borderskin。但我建议你去flex4(我的意见)。
============================================== ================================
在FLEX4,
你必须使用皮肤类,并且s:Rect有一个属性,您可以在其中为所有四个角应用不同的角半径。
退房此链接:
你可以用与使用BorderContainer垂直布局。
VGroup也有作为垂直框的,但不支持剥皮。(我的意思是没有定义skinClass属性)
<s:VGroup skinClass=""/>----not defined
<s:BorderContainer skinClass="bcSkin"/>----defined, apply custom skin
SO被使用BorderContainer GUD 1与垂直布局。
感谢
ANKUR
相关问题
- 1. 产量和默认情况||不输出默认情况下
- 2. 默认情况下,法国
- 3. 安卓:默认情况下
- 4. 在默认情况下的UITableViewCell
- 5. 复选框在默认情况下knockout.js
- 6. 默认情况下,在项目
- 7. 默认情况下,在asp.net MVC2
- 8. 在默认情况下优化CMake
- 9. 默认情况下,在网页
- 10. 默认情况下在参数
- 11. 默认情况下修改默认命令:默认命令为
- 12. 默认情况下,AppEngine主键
- 13. ,async:默认情况下是否为假?
- 14. 默认情况下禁用Telerik图例
- 15. 值“零”默认情况下,字符串
- 16. WCF 4:默认情况下,WCF服务
- 17. 默认情况下,mumamo-alt-php-tags-mode
- 18. 数据表 - 默认情况下
- 19. 开放的系统,默认情况下
- 20. 默认情况下选择的textfield-iphone
- 21. 默认情况下,UITableView编辑模式
- 22. DeltaImport默认情况下不会发生
- 23. 默认情况下打开地图
- 24. 默认情况下git push --force
- 25. 默认情况下,如何选择UITableViewCell?
- 26. 默认情况下WordPress的jquery包含
- 27. JUnit测试情况下默认包
- 28. 默认情况下如何显示ionicPopover
- 29. 默认情况下Grails 3 force https
- 30. 默认情况下设置AutoEventWireup =“false”
我怀疑你将不得不扩展组件来做到这一点;我不太确定它是如何实施的。如果你使用Flex 4,您可以使用带有自定义外观的BorderContainer来完成此操作。 – JeffryHouser