Posted on 2011-03-04 15:24
TWaver 阅读(1591)
评论(0) 编辑 收藏
在Java版本中提供的iconAttachment机制可以在网元的任意位置放置n个图标或文字,如下图所示

在Flex版本中,用于也可以通过以下方式实现在网元上显示icon的功能
1 server1.setStyle(Styles.ICONS_NAMES, ["att5","att6", "att7","att8"]);
2 server1.setStyle(Styles.ICONS_POSITION, Consts.POSITION_BOTTOMRIGHT_TOPRIGHT);
3 server1.setStyle(Styles.ICONS_ORIENTATION, Consts.ORIENTATION_TOP);
4 server1.setStyle(Styles.ICONS_XOFFSET, 5);

Flex版本的默认实现并没有提供在多个postion添加icon的功能
但是借助FlexMVC设计非常好的灵活性,可以很容易的扩展出这个功能,如下图所示

主要借助了TWaver中的Attachment机制,可以创建多个iconAttachment用来显示不同位置的图标
代码下载
attachment
有兴趣的同学也可以实现下不同位置不同方向的attachment
主要修改CustomIconAttachment的以下两个方法即可
1 private function getIconsSize(names:Array, orientation:String, xgap:Number, ygap:Number):Size
2 override public function draw(graphics:Graphics):void