Package se.lth.cs.pt.window
Class WindowControls
- java.lang.Object
-
- se.lth.cs.pt.window.WindowControls
-
public class WindowControls extends java.lang.Object
Avancerade finesser för ett SimpleWindow.
-
-
Field Summary
Fields Modifier and Type Field Description static int
KEY_EVENT
Betyder att en tangent tryckts.static int
MOUSE_EVENT
Betyder musklick.static int
TIMEOUT_EVENT
Betyder att inget hände (musklick eller tangenttryck) inom angiven tid.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addSprite(Sprite s)
Lägg till en Sprite-figur till detta fönster.void
drawImage(java.awt.Image image)
Ritar en bild, placerad i pennans aktuella läge.java.lang.String
input()
Visar en inmatningsruta och låter användaren skriva in en text.void
setAutoUpdate(boolean on)
Stänger av (eller sätter på) automatisk uppdatering av fönsterinnehållet.void
setFontName(java.lang.String name)
Ange typsnitt.void
setFontSize(int size)
Ange textstorlek.void
setMouseVisible(boolean visible)
Ställ in om muspilen ska synas eller intevoid
update()
Uppdaterar fönstrets innehåll på skärmen.int
waitForUserInput(long timeout)
Vänta på inmatning (musklick eller tangenttryckning).
-
-
-
Field Detail
-
MOUSE_EVENT
public static final int MOUSE_EVENT
Betyder musklick. SewaitForUserInput(long)
.- See Also:
- Constant Field Values
-
KEY_EVENT
public static final int KEY_EVENT
Betyder att en tangent tryckts. SewaitForUserInput(long)
.- See Also:
- Constant Field Values
-
TIMEOUT_EVENT
public static final int TIMEOUT_EVENT
Betyder att inget hände (musklick eller tangenttryck) inom angiven tid. SewaitForUserInput(long)
.- See Also:
- Constant Field Values
-
-
Method Detail
-
setFontSize
public void setFontSize(int size)
Ange textstorlek. Normal storlek är ungefär 14.
-
setFontName
public void setFontName(java.lang.String name)
Ange typsnitt. Exempel som fungerar på alla datorer är Font.SERIF, Font.SANS_SERIF och Font.MONOSPACED.
-
addSprite
public void addSprite(Sprite s)
Lägg till en Sprite-figur till detta fönster. Notera att figuren inte visas förrän den ges en position (med moveTo eller moveMidTo).
-
input
public java.lang.String input()
Visar en inmatningsruta och låter användaren skriva in en text.- Returns:
- texten som användaren matat in
-
waitForUserInput
public int waitForUserInput(long timeout)
Vänta på inmatning (musklick eller tangenttryckning). Metoden kan, om man vill, vänta en begränsad tid.- Parameters:
timeout
- anger hur länge (i millisekunder) vi ska vänta på inmatning- Returns:
- ett tal som berättar vilken sorts inmatning som hände:
MOUSE_EVENT
om vi fick ett musklick,KEY_EVENT
om vi fick ett musklick, ellerTIMEOUT_EVENT
om tiden löpte ut.
-
drawImage
public void drawImage(java.awt.Image image)
Ritar en bild, placerad i pennans aktuella läge. Pennans läge påverkas inte.- Parameters:
image
- bilden som ska visas i fönstret
-
setAutoUpdate
public void setAutoUpdate(boolean on)
Stänger av (eller sätter på) automatisk uppdatering av fönsterinnehållet. Normalt (i ett nyskapat fönster) är dessa automatiska uppdateringar på, så att ritoperationer direkt avspeglas på skärmen. I program med intensiva animeringar kan automatiska uppdateringar ge upphov till flimmer. Då kan man anropa setAutoUpdate(false) och sedan anropa update() då fönsterinnehållet är redo att visas. På så vis undviker man att halvfärdiga ritresultat flimrar förbi på skärmen.
-
update
public void update()
Uppdaterar fönstrets innehåll på skärmen. Normalt görs detta automatiskt, men om man anropat setAutoUpdate(false) måste programmet uttryckligen anropa update() vid en lämplig tidpunkt.
-
setMouseVisible
public void setMouseVisible(boolean visible)
Ställ in om muspilen ska synas eller inte- Parameters:
visible
- true om muspilen ska synas, false om den ska döljas
-
-