Class SimpleWindow

java.lang.Object
se.lth.cs.pt.window.SimpleWindow

public class SimpleWindow extends Object
Ett ritfönster, ungefär som det som använts i "Objektorienterad programmering och Java".
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    SimpleWindow(int width, int height, String title)
    Skapar ett fönster och gör det synligt.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Raderar innehållet i fönstret.
    void
    Stänger fönstret tillfälligt.
    static void
    delay(int ms)
    Väntar ms millisekunder.
    Hämtar avancerade kontroller för detta fönster.
    int
    Tar reda på x-koordinaten för muspekarens position vid senaste musklick.
    int
    Tar reda på y-koordinaten för muspekarens position vid senaste musklick.
    int
    Tar reda på vilket slags händelse som inträffat (MOUSE_EVENT eller KEY_EVENT).
    int
    Tar reda på fönstrets storlek i y-led.
    char
    Tar reda på vilken tangent som trycktes ned vid en KEY_EVENT-händelse.
    Tar reda på linjefärgen.
    int
    Tar reda på linjebredden.
    int
    Tar reda på x-koordinaten för musens position just nu.
    int
    Tar reda på y-koordinaten för musens position just nu.
    int
    Tar reda på fönstrets storlek i x-led.
    int
    Tar reda på x-koordinaten för pennans läge.
    int
    Tar reda på y-koordinaten för pennans läge.
    void
    lineTo(int x, int y)
    Flyttar pennan till punkten x,y och ritar samtidigt en rät linje.
    void
    moveTo(int x, int y)
    Flyttar pennan till punkten x,y utan att rita.
    void
    Öppnar ett stängt fönster.
    void
    Sätter linjefärgen till col.
    void
    setLineWidth(int thickness)
    Sätter linjebredden till thickness pixlar
    void
    Väntar tills användaren antingen klickar på en musknapp eller trycker ned en tangent på tangentbordet.
    char
    Väntar tills användaren trycker ned en tangent på tangentbordet.
    void
    Väntar tills användaren har klickat på en musknapp.
    void
    Skriver texten txt med början i pennans aktuella läge.

    Methods inherited from class java.lang.Object

    clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • SimpleWindow

      public SimpleWindow(int width, int height, String title)
      Skapar ett fönster och gör det synligt.
      Parameters:
      width - fönstrets bredd (räknat i pixlar)
      height - fönstrets höjd (räknat i pixlar)
      title - fönstrets titel
  • Method Details

    • getWidth

      public int getWidth()
      Tar reda på fönstrets storlek i x-led.
      Returns:
      fönstrets bredd
    • getHeight

      public int getHeight()
      Tar reda på fönstrets storlek i y-led.
      Returns:
      fönstrets höjd
    • clear

      public void clear()
      Raderar innehållet i fönstret.
    • close

      public void close()
      Stänger fönstret tillfälligt.
    • open

      public void open()
      Öppnar ett stängt fönster.
    • moveTo

      public void moveTo(int x, int y)
      Flyttar pennan till punkten x,y utan att rita.
      Parameters:
      x - x-koordinat för pennans nya position
      y - y-koordinat för pennans nya position
    • lineTo

      public void lineTo(int x, int y)
      Flyttar pennan till punkten x,y och ritar samtidigt en rät linje.
      Parameters:
      x - x-koordinat för pennans nya position
      y - y-koordinat för pennans nya position
    • setLineWidth

      public void setLineWidth(int thickness)
      Sätter linjebredden till thickness pixlar
      Parameters:
      thickness - linjebredd (i pixlar, där 1 är normal bredd)
    • getLineWidth

      public int getLineWidth()
      Tar reda på linjebredden.
      Returns:
      linjebredden (i pixlar)
    • writeText

      public void writeText(String txt)
      Skriver texten txt med början i pennans aktuella läge. Pennans läge påverkas inte.
      Parameters:
      txt - texten som ska skrivas i fönstret
    • getX

      public int getX()
      Tar reda på x-koordinaten för pennans läge.
      Returns:
      pennans x-koordinat
    • getY

      public int getY()
      Tar reda på y-koordinaten för pennans läge.
      Returns:
      pennans y-koordinat
    • setLineColor

      public void setLineColor(Color col)
      Sätter linjefärgen till col. Det finns ett antal inbyggda färger, som Color.RED eller Color.MAGENTA. Man kan även skapa nya, egna färger:
       
         SimpleWindow w = new SimpleWindow(300, 300, "colordemo");
         w.setLineColor(Color.RED);
         w.moveTo(100, 100);
         w.lineTo(200, 100);                        // en röd linje
         
         Color mycolor = new Color(242, 128, 161);  // en helt egen färg
         w.setLineColor(mycolor);
         w.lineTo(200, 200);                        // en linje i denna färg
         ...
       
       
      Parameters:
      col - den nya linjefärgen
      See Also:
    • getLineColor

      public Color getLineColor()
      Tar reda på linjefärgen.
      Returns:
      linjefärg
    • getMouseX

      public int getMouseX()
      Tar reda på x-koordinaten för musens position just nu.
      Returns:
      muspekarens x-koordinat, relativt fönstret
    • getMouseY

      public int getMouseY()
      Tar reda på y-koordinaten för musens position just nu.
      Returns:
      muspekarens y-koordinat, relativt fönstret
    • waitForMouseClick

      public void waitForMouseClick()
      Väntar tills användaren har klickat på en musknapp.
    • getClickedX

      public int getClickedX()
      Tar reda på x-koordinaten för muspekarens position vid senaste musklick.
      Returns:
      klickets x-koordinat
    • getClickedY

      public int getClickedY()
      Tar reda på y-koordinaten för muspekarens position vid senaste musklick.
      Returns:
      klickets y-koordinat
    • waitForKey

      public char waitForKey()
      Väntar tills användaren trycker ned en tangent på tangentbordet.
      Returns:
      den tryckta tangenten
    • waitForEvent

      public void waitForEvent()
      Väntar tills användaren antingen klickar på en musknapp eller trycker ned en tangent på tangentbordet.
    • getEventType

      public int getEventType()
      Tar reda på vilket slags händelse som inträffat (MOUSE_EVENT eller KEY_EVENT).
      Returns:
      KEY_EVENT för tangenttryck, MOUSE_EVENT för musklick
    • getKey

      public char getKey()
      Tar reda på vilken tangent som trycktes ned vid en KEY_EVENT-händelse.
      Returns:
      teckenkoden för tangenten
    • delay

      public static void delay(int ms)
      Väntar ms millisekunder.
      Parameters:
      ms - antalet millisekunder programmet ska pausa
    • getAdvancedControls

      public WindowControls getAdvancedControls()
      Hämtar avancerade kontroller för detta fönster.