FlexÍÏ×§ CanvasÈÝÆ÷ÀïÍ϶¯Box
2009-02-18
ËõÂÔÏÔʾ
FlexÍÏ×§-CanvasÈÝÆ÷ÀïÍ϶¯Box
ÎÄÕ·ÖÀà:Webǰ¶Ë¹Ø¼ü×Ö: flex, flexÍÏ×§, canvas, box
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.core.IUIComponent;
import mx.containers.Box;
import mx.containers.Canvas;
import mx.events.DragEvent;
import mx.managers.DragManager;
import mx.core.DragSource;
import mx.core.UIComponent;
private static const FORMAT:String = "box";
private function boxMouseDownHandler(evt:MouseEvent):void{
var iu:IUIComponent = evt.currentTarget as IUIComponent;
var dragSource:DragSource = new DragSource();
dragSource.addData( iu, FORMAT );
DragManager.doDrag( iu, dragSource, evt );
}
private function canvasDragEnterHandler(evt:DragEvent):void{
if(evt.dragSource.hasFormat(FORMAT)){
DragManager.acceptDragDrop(Canvas(evt.currentTarget));
}
}
private function canvasDragHandler(evt:DragEvent):void{
var box:Box = Box(evt.dragInitiator);
box.x = evt.localX;
box.y = evt.localY;
}
]]>
</mx:Script>
<mx:Canvas backgroundColor="0xEEEEEE" width="500" height="200" horizontalCenter="0" verticalCenter="0" dragEnter="canvasDragEnterHandler(event)" dragDrop="canvasDragHandler(event)">
<mx:Box width="20" height="20" backgroundColor="0x00FFCC" x="137" y="66" mouseDown="boxMouseDownHandler(event);"></mx:Box>
</mx:Canvas>
</mx:WindowedApplication>
µ±<mx:Box>·¢³ömouseDownʼþʱ£¬boxMouseDownHandler ·½·¨±»µ÷Óò¢ÇÒÍÏ×§Ô´Êý¾Ý±»Ôö¼Óµ½DragManager¡£
canvasDragEnterHandler¼ì²éÍÏ×§Ô´µÄ¸ñʽ
ÊÍ·ÅʱcanvasDragHandler·½·¨¸Ä±äÍÏ×§Ô´µÄλÖÃ
Ïà¹ØÎĵµ£º
¼¸ÈÕǰ±»ÀÏ×ÜÍÆ¼öÎÄÕÂһƪ£¬À´×Ô7yueÐÖµÄblog,×÷ÕßÊÇSean Moore ,
ÔÎĵØÖ·£ºhttp://www.insideria.com/2009/04/51-actionscript-30-and-flex-op.html
ÓëÆäÔÚ³ÌÐòдÍêÁËÖ®ºóÓ·Ö×µÃÅܲ»¶¯£¬²»ÈçÆ½Ê±×¢ÒâÕâЩ¹Ø¼üµã£¬Ê±Ê±ÌáÐÑ×Ô¼º¡£·Òë³öÀ´£¬ÒÔ±ãÒÔºóʱʱ²éÔÄ¡£
1 ´´½¨ÐÂÊý×éʱ±ÜÃâʹÓÃËüµÄ¹¹Ô캯Êý¡£
......
//»ñµÃÆÁÄ»µÄ·Ö±æÂÊ
var
x:Number=Capabilities.screenResolutionX;
var
y:Number=Capabilities.screenResolutionY;
Alert.show(
"x="
+x+
"y="
+y);
µÚ¶þÖÖ·½·¨
Alert.show(stage.fullScreenWidth+
"=="
+stage.fullScreenHeight);
//»ñµÃstage£¨¹¤×÷Çø£ ......
AdobeÔÚ¿ª·¢Flex×îÓÐÀûµÄ¹¤¾ß¾ÍÊÇFlex Builder£¬È»¶ø£¬¹¤ÓûÉÆÆäÊ£¬±ØÏÈÀûÆä"¼ü"£¬¿ìËÙ¼ü¶ÔÒ»°ã¿ª·¢ÕßÀ´Ëµ¶¼·Ç³£ÓÐÓ㬷ǵ«Èç´Ë£¬ºÜ¶à¿ìËÙ¼üÓë×éºÏ¼üÊÇ»áÓëÆäËûÈíÌå»òϵͳ¶¼ÓÐÀ×֮ͬ´¦£¬¾Ù¸öÀý×ÓÀ´Ëµ£¬Ctrl + C¾ÍÊǸ´ÖÆ£¬Ctrl + V¾ÍÊÇÌùÉÏ£¬¿´¿´Ðí¶à×÷ҵϵͳÓë±à¼ÈíÌåÊDz»ÊǶ¼Ò»ÑùÄØ£¿ÈôÄãÓÐ×¢Òâµ½¾Í»á²»ÄÑ·¢ÏÖ£¬ÆäʵFlex ......
effects\Blinds.as
JScript code
package effects
{
import effects.effectClasses.BlindsInstance;
import mx.controls.scrollClasses.ScrollBarDirection;
import mx.effects.IEffectInstance;
  ......
¹Ø¼ü×Ö: flex, arraycollection
¼¯ºÏÊÇActionScript Öй¦ÄÜÇ¿´óµÄ»ùÓÚË÷ÒýµÄÊý×é×é¼þ£¬Ìí¼ÓÁËÈç¶ÔÄÚÈݽøÐÐÅÅÐòµÈ¹¦ÄÜ£¬
²Ù×÷Êý×éµÄ¶ÁȡλÖ㬴´½¨¾¹ýÅÅÐòµÄÊý×éÊÓͼ¡£¼¯ºÏÒ²ÄÜ֪ͨÆäÈÎÒâʼþ¼àÌýÆ÷¼àÌýÆäÊý
¾ÝÊÇ·ñ¸Ä±ä£¬ÒÔ¼°ÈκÎÊý¾ÝÏî±»Ìí¼Óµ½Ô´Êý×éʱ¿ÉÖ´ÐÐ×Ô¶¨ÒåÂß¼¡£µ±Êý¾Ý¸Ä±äʱ¿É֪ͨÆä
¼àÌýÆ÷£¬ÕâÊǼ¯ºÏµÄй ......