我有一个以编程方式填充的VBox,在特定事件(dragDrop)之后我做了一些计算,重新排序一些变量,然后重新构建VBox。这一切都很好,但我希望VBox回滚到正确的verticalScrollPosition。我尝试过最简单的事情:
myVBox.verticalScrollPosition = 200
但是我在重建之后无法设置滚动位置。有什么想法吗?
编辑:根据Franky的回复,我意识到我的dragDrop函数正在调用rebuilder函数然后调用位置设置函数,这意味着它在尝试设置时没有被构建。现在我将我希望盒子设置的位置传递给rebuilder函数,该函数在构建VBox结束时设置滚动位置,一切都很好。
答案 0 :(得分:1)
尝试添加此代码,我正在工作,所以我无法验证它是否有效,希望如此:
//Initialize the Vbox
public var myVbox:VBox = new VBox();
//Define the function which rebuilds the Vbox
public function rebuildVbox():VBox{
myVbox.verticalScrollPosition=200;
return myVbox
}
//Define your event.complete function which sets the verticalScrollPosition
//after the drag drop
public function setVerticalScrollPosition():void{
myVbox.addEventListener(Event.COMPLETE,function(event:Event):void{
rebuildVbox()
});
}