use a "viewport" approach:
one "content" panel, with the size specified as such that the whole interface needed can fit in it.
one "container" panel, with a fixed size and scrollbar, that contains the "content" panel.
Then simply change the content panel's y coordinate based on the scrollbar position.
A listbox would be closer to what you initially wanted than a dropdownlist.
Listboxes can have several columns, with headers or not.
And ListItems (for both listboxes and dropdown) have a 'checked' property (read/write). It's not drawn unless you actually set it to true/false, eg:
myListbox.add("item", "item 1").checked true; // item 1 will be checked
myListbox.add("item", "item 2").checked = false; // item 2 has checkbox in front of it, not checked
Yeah, I came to that conclusion too after reading Peters ScriptUI pdf.
Roy -- The PDF has an example (on pp. 64-65) of a script showing what Vamitul called the viewport approach.