Actionscript 3 “可能性的实现”;“退后一步”;

Actionscript 3 “可能性的实现”;“退后一步”;,actionscript-3,Actionscript 3,我想在应用程序中实现后退/前进的功能。 考虑一下:有一些数组引用函数,要后退/前进,只需调用数组中的最后一个元素。 班级经理: public class Manager [...] private static var _forward:Vector.<Function>; [...] public static function set forward(f:Function):void{ _forward.push(f); } public static

我想在应用程序中实现后退/前进的功能。 考虑一下:有一些数组引用函数,要后退/前进,只需调用数组中的最后一个元素。 班级经理:

public class Manager
[...]
private static var _forward:Vector.<Function>;
[...]

 public static function set forward(f:Function):void{
            _forward.push(f);
}
public static function get forward():Function{
    return _forward[_forward.length-1];
}
这种使用导致了错误。 这是正确的想法和实施方式吗?如果没有,我如何解决这个问题?
谢谢

它不起作用,因为

_map.moveObject(mo, 0, 150, -150);
返回的不是函数,而是函数的结果(在本例中,显然是void)。要获取对函数的引用,请执行以下操作:

Manager.forward = _map.moveObject;
现在很清楚,除了功能和参数的需要(和它们的数量可能会有所不同),还必须存储。通常,使用pattern命令可以解决这个问题。关于此界面:

    package
    {
    public interface ICommand
    {
            function execute():*;
            function undo():void;
            function redo();
    }
    }
    package
    {
    public interface ICommand
    {
            function execute():*;
            function undo():void;
            function redo();
    }
    }