M
Du musst überlegen, wie groß einen dargestellte Zeile ist. Dann nimmst du die gewünschte Höhe des Fensters und errechnest damit, wieviele Zeilen tatsächlich reinpassen und zeichnest die. Was nicht mehr reinpasst, wird nicht gezeichnet.
Fürs Scrollen musst du dir nur merken, welche Einträge gerade dargestellt werden und wieviel ein Tastendruck/ eine Mausradumdrehung ändert. Wenn du also z.B. die Einträge 0 bis 4 darstellst und ein Event ScrolleRunter kommt, könntest du dann z.B. 3 bis 7 darstellen.