我正在编写Flex DataGridColumn类的扩展。我想覆盖可编辑和可排序的属性,以便我可以在setter中调度一个事件。所以我从Adobe Docs中查找了方法签名(我使用的是Flex 3.5编译器):
语言版本:ActionScript 3.0
实施
public function get editable():Boolean
public function set editable(value:Boolean):void
public var sortable:Boolean
我应该能够覆盖可编辑的setter,并使用setter覆盖sortable的功能。
在我的代码中我有:
public override function set editable(value:Boolean):void {
super.editable = value;
//code to dispatch event
}
和
public override function set sortable(value:Boolean):void{
super.sortable = value;
//code for event
}
但是我收到了#1023错误:不兼容的覆盖。我在方法签名上尝试了各种组合,但这些组合与上面文档中的完全相同。
是什么给出的?我错过了一些明显的东西吗?
编辑:显然文档与实际源代码不符。可编辑和可排序都是DataGridColumn.as中的变量。无论如何,我可以使用setter / getter覆盖它们而无需修改基类? DataGridColumn.as来源:
public var editable:Boolean = true;
public var sortable:Booelan = true;
答案 0 :(得分:1)
您不能将变量覆盖为属性(get / set)。 BTW,editable
和sortable
成为SDK 4.0中的属性。