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 ´´½¨ÐÂÊý×éʱ±ÜÃâʹÓÃËüµÄ¹¹Ô캯Êý¡£
......
Flex Builder 3.0 For Eclipse plugin×¼±¸°²×°.
2009-11-11 15:38
ÕâÁ½Ìì×¼±¸Ñ§Ï°Flex,ÓÚÊÇÏÂÔØÁËFlex Builder 3.0 For Eclipse plugin×¼±¸°²×°.
µ«Êǰ²×°ºóÆô¶¯Eclipse,ÕÒÁ˰ëÌìҲûÕÒµ½Flex.¶øÇÒFlex Builder»á°ÑJREÒ²°²×°.¾õµÃÕâÑùºÜ²»Ë¬.
ËùÒÔÎÒÏëµ½Äܲ»ÄÜÀ´¸öFlex BuilderÂÌÉ«°²×°·½·¨ÄØ.
Ïëµ½¾Í×ö.ÏÂÃæÊÇÎÒµÄ ......
//»ñµÃÆÁÄ»µÄ·Ö±æÂÊ
var
x:Number=Capabilities.screenResolutionX;
var
y:Number=Capabilities.screenResolutionY;
Alert.show(
"x="
+x+
"y="
+y);
µÚ¶þÖÖ·½·¨
Alert.show(stage.fullScreenWidth+
"=="
+stage.fullScreenHeight);
//»ñµÃstage£¨¹¤×÷Çø£ ......
flexºÍC++·þÎñÆ÷ͨÐÅ¡£ÒòΪ°²È«É³Â©ÎÊÌ⣬µ±swfλÓÚA·þÎñÆ÷£¬C++·þÎñÆ÷³ÌÐòλÓÚB·þÎñÆ÷ʱ¡£
ÕâʱswfºÍB·þÎñÆ÷½¨Á¢Socket½¨Á¢Á¬½Ó»á²úÉú¿çÓòÎÊÌâ¡£
½â¾ö·½·¨ÈçÏÂ
swf½¨Á¢socketʱ»áÏÈ·¢ÆðÒ»¸öÇëÇó¿çÓòÎļþµÄÇëÇó:"<policy-file-request/>"
·þÎñÆ÷½ÓÊÕµ½ºó·¢ËÍ×Ö·û´®
<?xml version="1.0"?>
<cross-doma ......
1.¸´ÖÆÄÚÈݵ½ÏµÍ³¼ôÌù°å
System.setClipboard(strContent);
2.¸´ÖÆÒ»¸öArrayCollection
//dummy solution( well, it works )
var bar:ArrayCollection = new ArrayCollection();
for each ( var i:Object in ac ){
bar.addItem( ......