Flex自定义组件不会调整大小

时间:2011-04-05 22:41:58

标签: flash actionscript-3 flex4

我正在尝试使用以下事件处理程序

创建扩展对象
public function pickerMove(e:MouseEvent):void {
        trace("in mouse move");
    var offsetX:int = e.stageX - touchX;
        trace(offsetX);
    picker.x += offsetX;
        trace(picker.width);
    picker.width -= offsetX;
        trace(picker.width);
    touchX = e.stageX;
}

picker.x + = offsetX按预期工作,并移动组件的x坐标。

问题在于picker.width - = offsetX

组件的宽度在屏幕上不会改变,但picker.width的值会随着在控制台上打印而改变。

以下是跟踪的一些示例输出:

in mouse move
-1
928
929
in mouse move
-1
929
930
in mouse move
-1
930
931

是否有一些我不了解自定义组件大小调整的内容?

1 个答案:

答案 0 :(得分:0)

尝试使用UIComponent失效机制并覆盖自定义组件中的updateDisplayList()以使用新宽度重新绘制组件。