【问题标题】:Flex Smooth Drag of Objects对象的 Flex 平滑拖动
【发布时间】:2010-12-20 19:57:17
【问题描述】:

我正在尝试创建一个可以在 Flex 4 中移动的对象。

我尝试了http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf64595-7fed.html,但在这个大多数示例中,实际对象(暂停)直到拖动完成,但我正在寻找在拖动仍然打开时将完成/显示更新的东西。 .. 在我尝试过的那些行中:Problems replicating drag-and-drop with mouse events ... 但在这里我无法理解“什么是 MouseHelper 和 EventHelpers”。

也试过这个:Flash AS3 custome Dragging using MOUSE_MOVE event 但动作不流畅,很jig-jag。

欢迎提出任何建议。

问候

【问题讨论】:

    标签: actionscript-3 flex4


    【解决方案1】:

    这里是an example,有5种拖拽方式(四种被注释掉了):

    * MouseEvent.MOUSE_MOVE
    * Event.ENTER_FRAME
    * startDrag(true)
    * Timer(10) 每 10 毫秒设置一次 x = mouseX y = mouseY
    * Timer(100) 创建一个补间到 mouseX, mouseY 而不是应用值

    如果我将鼠标移动得足够快,那么所有这些模式(以 30fps)看起来好像精灵正在追逐鼠标光标,没有被拖动,而且动画根本不流畅。然而,最平滑的动画是由 tweener 提供的,但该模式显示鼠标光标和被拖动的精灵之间的平均距离更大。
    顺便说一句,快速拖动,例如windows explorer 也让它闪烁,因为它没有足够的时间在每个位置进行渲染

    【讨论】:

    • 感谢您的帖子。当我点击 swf 时,蓝色方块来到鼠标位置 - 这是故意的吗?另外,我在这里尝试将此“移动”应用到自定义视频播放器,是否同样适用.. 或者它只适用于 Sprite,因为我们没有使用它。
    • @ user237865 : 1. 按下鼠标按钮时蓝色方块移动到光标处 2. 在 wonderfl.net 上,您可以单击“fork”按钮(您需要使用 openID 注册或登录( addChild()(每个 DisplayObject 或其子类)但是,如果您需要示例中的补间功能 - 您可以在这里找到:libspark.org/wiki/BetweenAS3/en
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-22
    • 2011-04-30
    • 2012-01-22
    • 2011-01-05
    • 1970-01-01
    • 2018-06-20
    • 1970-01-01
    相关资源
    最近更新 更多