2012-05-07 16 views
0

私はFlexプロジェクトで作業しています。ドラッグの機能を使用するには&です。 私はTileListにアイテムとしての画像とCanvasを埋めました。私はタイルリストの"dragEnabled""dragMoveEnabled"プロパティを使用して、イメージ(項目)をドラッグ可能にしましたが、キャンバスをドロップ可能な領域にすることはできません。TileListから画像をドラッグし、Flex 3のキャンバスにドロップする

私は途中でフレックスしているので、簡単にしてください。 ありがとう

答えて

0

私はこのコードを作成しました!

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> 
<mx:Script> 
    <![CDATA[ 
//Import classes#################################################################### 
import mx.managers.DragManager; 
import mx.core.DragSource; 
import mx.events.DragEvent; 
import flash.events.MouseEvent; 

// IMAGES ########################################################################### 

[Bindable] 
[Embed(source="assets/images/thumb/1.jpg")] 
public var photo1:Class;    

[Bindable] 
[Embed(source="assets/images/thumb/2.jpg")] 
public var photo2:Class; 


// FUNCTIONS ########################################################################### 

import mx.core.DragSource; 
import mx.managers.DragManager; 
import mx.events.DragEvent; 
import mx.controls.Alert; 

private function dragEnterHandler(event:DragEvent):void { 
if (event.dragSource.hasFormat("items")){ 
DragManager.acceptDragDrop(Canvas(event.currentTarget)); 
} 
} 

private function dragDropHandler(event:DragEvent):void { 

} 



]]> 
</mx:Script> 




<!-- ######## CONTROLS ############################################################ --> 


<!-- canvas --> 
<mx:Canvas dragDrop="{dragDropHandler(event)}" dragEnter="{dragEnterHandler(event)}" x="395" y="10" width="436" height="486" backgroundColor="#FFFFFF"> 
</mx:Canvas> 

<!-- tile list --> 
<mx:TileList x="0" y="10" height="100%" width="154" columnCount="1" id="tl" maxColumns="1" dragEnabled="true" dragMoveEnabled="false" allowMultipleSelection="false" > 
<mx:dataProvider> 
<mx:Array> 
<mx:Object label="photo 1" icon="{photo1}" data="photo" /> 
<mx:Object label="photo 2" icon="{photo2}" data="photo" /> 
</mx:Array> 
</mx:dataProvider> 
</mx:TileList> 


</mx:Application> 

キャンバスでドラッグが可能になりましたが、画像をドロップすると画像が消えるだけです。私はDragDropイベントを処理する関数を作成する必要がありますが、私は本当にどのようにdragSourceイメージを取得するか分からないことを知っています。 助けて...私は感謝します

関連する問題