0199 TextArea
Följande klass är ett alternativ till
System.out.println();
Klassen TextArea är en Actor
Utskrift sker till objektets bakgrundsbild. I exemplet nedan täcker bakgrundsbilden hela bakgrunden i World.

Klassdiagram visas nedan.
TextArea
- private int currentYPosition
- private int currentXPosition
- private int deltaX
- private int fontSize
- public TextArea()
- private int getLineHeightInPixels()
- public printLine(String text)
Objektvariabler
currentYPosition
Är y-positionen där utskrift ska ske.
currentXPosition
Är x-positionen där utskrift ska ske.
deltaX
Är bredden på en textkolumn.
fontSize
Anger fontstorlek i pixlar.
Konstruktor
Konstruktorn tar inga parametrar.
Initiering av objektvariabler
//pseudokod nedan
currentYPosition --> getLineHeightInPixels ger svaret
currentXPosition --> 10
deltaX --> 150
fontSize --> 10
bakgrundsbild
Gör en lokal variabel
imageav datatypenGreenfootImage.Gör ett objekt av klassen
GreenfootImage, och lägg objektet i variabelnimageovan.Låt det vara t.ex. 400 x 300 pixlar.
Sätt färgen till vit.
Color.WHITEFyll hela bilden med vit färg genom att anropa metoden
fill.Sätt bakgrundsfärgen till svart, så att texten blir svart.
Color.BLACKAnropa metoden
setFontmed parameternnew Font("corrier", Font.PLAIN, fontSize)Anropa metoden
setImageoch bifoga parameternimage.
Metoden getLineHeightInPixels
Metoden returnerar radhöjden i pixlar. Beräkning sker på följande vis.
fontstorlek * 140 / 100
Metoden printLine
Metoden tar en parameter text som är den text som ska skrivas ut.
Bakgrundsbilden kan hämtas med metoden getImage.
Rita texten med hjälp av metoden drawString i klassen GreenfootImage.
Öka currentYPosition med det som metoden getLineHeightInPixels returnerar.
För att få utskrift i nästa kolumn när den första är full görs följande, om currentPosition är störren än bakgrundsbildens höjd.
currentYPositionsätts till det metodengetLineHeightInPixelsreturnerar.currentXPositionökas meddeltaX.