Было бы что-то вроде этого:
this.createClassObject(mx.containers.ScrollPane, "my_sp", 10);
my_sp.setSize(360, 280);
this.createEmptyMovieClip("button_up",this.getNextHighestDepth());
this.createEmptyMovieClip("button_down",this.getNextHighestDepth());
this.createEmptyMovieClip("button_left",this.getNextHighestDepth());
this.createEmptyMovieClip("button_right",this.getNextHighestDepth());
button_up.onPress=function(){
my_sp.onEnterFrame=function(){
this.vPosition -= 5;
}
}
button_down.onPress=function(){
my_sp.onEnterFrame=function(){
this.vPosition += 5;
}
}
button_left.onPress=function(){
my_sp.onEnterFrame=function(){
this.hPosition -= 5;
}
}
button_right.onPress=function(){
my_sp.onEnterFrame=function(){
this.hPosition += 5;
}
}
//replace this with whatever event you want to use to make the scrolling stop
button_right.onRollOut = button_left.onRollOut = button_up.onRollOut = button_down.onRollOut = function(){
my_sp.onEnterFrame=undefined;
}
Вам нужно будет проверить _hmax и _vmax, чтобы убедиться, что вы не прокручиваете до конца содержимого, где полоса прокрутки естественным образом останавливается. Я не помню, как называются эти переменные, но если вы запускаете свою программу в режиме отладки и копаетесь в экземпляре scrollpane, вы должны найти его. Вероятно, будет проще, если вы переместите встроенную полосу прокрутки вниз и посмотрите, какая переменная изменится, а затем найдете ту, которая соответствует и является статической.