在 Flash 中触发帧更新

Trigger a frame update in Flash

我遇到过调用导致位图数据闪烁的代码的情况。在不将帧速率更改为更高值的情况下(不知道这是否可以在运行时动态更改)是否可以快速重绘帧?

在过去,您可以通过调用 updateAfterEvent() 使 Flash Player 手动更新框架。这仍然有效吗?还有其他更新框架的方法吗?

这是我目前的情况:

// force redraw
var updateEvent:MouseEvent = new MouseEvent(MouseEvent.MOUSE_MOVE);
updateEvent.updateAfterEvent();

如果它是局部变量,这会被垃圾收集吗?

如果您在进入框架侦听器期间更改某些内容,它应该会自动更新。否则,在非 enterframe 侦听器中使用 updateAfterEvent()

function onMouseMove(e:MouseEvent):void {
    //  ... code that changes something
    e.updateAfterEvent();
}