惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
H
Help Net Security
腾讯CDC
宝玉的分享
宝玉的分享
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
LangChain Blog
爱范儿
爱范儿
T
The Blog of Author Tim Ferriss
J
Java Code Geeks
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
MyScale Blog
MyScale Blog
Engineering at Meta
Engineering at Meta
N
Netflix TechBlog - Medium
D
Docker
V
V2EX
Last Week in AI
Last Week in AI
G
Google Developers Blog
IT之家
IT之家
C
Check Point Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
人人都是产品经理
人人都是产品经理
博客园 - 叶小钗
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 聂微东

博客园 - Bona shen

迁移新博客 转载-现代船舶生产过程与工位图 大连中远船务成功上线韩国现代造船管理集成系统 造船管理精细化 文献收录-船舶建造的现代工程分解结构 收录国外造船信息-Pursuit of a product work breakdown structure (PWBS) 记录-沪东船厂两台600T门吊倒塌事故 发布VARCHART JGantt 破解 licence 今天我捐款了 记录-汶川地震 20080512 收藏 CXF开发资料 UtilMind.AutoUpgrader.Pro.v4.6.7 升级配置文件工具 2007-11-9前琐碎事情 Flex beta2+XFire开发实例 (三) - Bona shen Flex beta2+XFire开发实例(二) Flex beta2+XFire开发实例 买了本<<flash actionscript 3.0殿堂之路>> flexmdi-代码开放 Flex-动态加载SWF文件并获取对象类
FLEX-蒙板处理
Bona shen · 2007-09-11 · via 博客园 - Bona shen

同事在处理绘图时,总有些超出边界,flex可不管你超不超,照样show出来,而在window编程中有API
selectClipRng来处理,在flex中可以实现,示例如下:

in maskExample.mxml

 1 <?xml version="1.0"?>
 2 <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
 3      width="100%" height="100%">
 4     <mx:CheckBox id="cb1" label="enable mask" x="26" y="258"
selected
="false" click="enableMask(cb1.selected);"/>
 5     <mx:TextArea id="t1" x="26" y="58" width="352" height="192" wordWrap="true">
 6         <mx:text><![CDATA[
       省略
12 ]]></mx:text>
13     </mx:TextArea>
14     <mx:creationComplete>
15         <![CDATA[
16             //enableMask(cb1.selected);
17         ]]>
18     </mx:creationComplete>
19     <mx:Script>
20         <![CDATA[
21 
22             private function enableMask(mode:Boolean):void
23             {
24                 var mask:Sprite = t1.getChildByName("_masker") as Sprite;
25                 if(mode){
26                     if(!mask){
27                         mask = new Sprite();
28                         mask.name ="_masker";
29                         t1.addChild(mask);
30                         t1.mask = mask;
31                         
32                         var w:int = t1.width;
33                         var h:int = t1.height;
34                         var g:Graphics = mask.graphics;
35                         g.beginFill(0x000000);
36                         g.drawRect(20,20,w-10,h-10);
37                         g.endFill();
38                     }
39                 }else{
40                     if(mask){
41                         t1.mask = null;
42                         t1.removeChild(mask);
43                     }
44                 }
45             }
46         ]]>
47     </mx:Script>
48     <mx:Label x="26" y="21" text="蒙板示例" color="#D72626" width="112" fontSize="19"/>
49     
50 
51 </mx:Application>
52 

29行:蒙板也必须是目标对象的child.故采用addChild;
30行:就是将sprite设置为蒙板。