それは普通の出し方じゃないかw
4のソースを見た感じでは、もうできてるっぽい?

>g.drawString(elementList[i], 10, 10 * (i - start + 1));

ここでY座標を加算しているから、縦に並べられてるはずだな