Edit Listbox

I am looking to edit a listbox a bit.

Here is the scene, I have a listbox that has a lot off items in it but you only see 8 items at a time. I would like if you selected item 8 and the listbox would automatically scroll up 2 levels, exposing items 9 and 10. This would happen every time you selected the first or last item in the listbox.

Hmmm.

Maybe somthing to do y position of the listbox.

if listbox y position = (what ever it is.)
setSelectedIndex(getSelectedIndex()+1)
:q:

Better yet, when you use the arrow keys in a listbox it works great. You go to the bottom item and the listbox scrolls up 1 position. How can this be done by selecting the last item with the mouse, and have the listbox go up 1 position.