flex-拖放。

我试图在SkinnableContainer上拖放对象-遇到一个非常奇怪的问题 下降仅发生在少数地方-在其他地方仅显示\“ X \”符号,并且在下降后恢复到原始位置。我使用了非常标准的命令...从功能2到功能3,调用很少发生,如在跟踪语句中看到的-关于发生这种情况的任何指导? 我向SkinnableContainer添加了以下代码:
dragEnter=\"dragEnterHandler(event);\" dragDrop=\"dragDropHandler(event);
(1):
private function mouseMoveHandler(event:MouseEvent):void    
{
  var dragInitiator:Image = Image(event.currentTarget);   
  var ds:DragSource = new DragSource();    
  ds.addData(dragInitiator,\"img\"); //made change here    
  DragManager.doDrag(dragInitiator, ds, event);
}
(2):
private function dragEnterHandler(event:DragEvent):void {

if (event.dragSource.hasFormat(\"img\"))
{
   trace(\"came here\"); //comes here for each mouse move     
   DragManager.acceptDragDrop(SkinnableContainer(event.currentTarget));
}
(3):
private function dragDropHandler(event:DragEvent):void {    
trace(\"in drag drop handler\"); //doesn\'t come here for most places
    
已邀请:
根据Using Flex 4参考:   要将容器用作放置目标,必须使用容器的ѭ4属性设置颜色。否则,容器的背景颜色是透明的,并且拖放管理器无法检测到鼠标指针位于可能的放置目标上。 在下面的示例中,他们使用mx容器(
Canvas
),但是我检查了AS3引用,
spark.components.SkinnableContainer
确实具有样式
backgroundColor
。 我自己还没有尝试过,所以请确认是否是问题所在。从您的描述来看,只有容器的某些部分正在注册
dragEnter
事件,这似乎是导致这种影响的考虑因素。     

要回复问题请先登录注册